MySQL联合查询语法内联、左联、右联、全联
MySQL联合查询效率较高,以下例子来说明联合查询(内联、左联、右联、全联)的好处:
T1表结构(用户id,用户名,密码)   
userid   username  password
  1    jack    jackpwd   
  2    owen    owenpwd
T2表结构(用户id,用户积分,用户等级)   
userid(int)   jifen   dengji 
    1       20     3   
    3       50     6
第一:内联( inner join )
如果想把用户信息、积分、等级都列出来,那么一般会这样写:
 select * from T1, T3 where T1.userid = T3.userid
(其实这样的结果等同于 select * from T1 inner join T3 on T1.userid=T3.userid )。
把两个表中都存在userid的行拼成一行(即内联),但后者的效率会比前者高很多,建议用后者(内联)的写法。
SQL语句:
 select * from T1 inner join T2 on T1.userid = T2.userid
运行结果   
T1.userid   username   password   T2.userid   jifen   dengji   
1   jack   jackpwd   1   20   3
第二:左联( left join )
显示左表T1中的所有行,并把右表T2中符合条件加到左表T1中;
右表T2中不符合条件,就不用加入结果表中,并且NULL表示。
SQL语句:
 select * from T1 left join T2 on T1.userid = T2.userid
运行结果   
T1.userid   username   password   T2.userid   jifen   dengji   
  1   jack   jackpwd   1   20   3   
  2   owen   owenpwd   NULL   NULL   NULL
第三:右联( right join )。
显示右表T2中的所有行,并把左表T1中符合条件加到右表T2中;
左表T1中不符合条件,就不用加入结果表中,并且NULL表示。
SQL语句:
 select * from T1 right join T2 on T1.userid = T2.userid
运行结果   
T1.userid   username   password   T2.userid   jifen   dengji   
1   jack   jackpwd   1   20   3   
NULL   NULL   NULL   3   50   6
第四:全联( full join )
显示左表T1、右表T2两边中的所有行,即把左联结果表 + 右联结果表组合在一起,然后过滤掉重复的。
SQL语句:
 select * from T1 full join T2 on T1.userid = T2.userid 
 
运行结果   
T1.userid   username   password   T2.userid   jifen   dengji   
1   jack   jackpwd   1   20   3   
2   owen   owenpwd   NULL   NULL   NULL   
NULL   NULL   NULL   3   50   6
总结,关于联合查询,效率的确比较高,4种联合方式如果可以灵活使用,基本上复杂的语句结构也会简单起来。
MySQL联合查询语法内联、左联、右联、全联的更多相关文章
- SQL联合查询(内联、左联、右联、全联)语法
		SQL联合查询(内联.左联.右联.全联)语法 概述: 联合查询效率较高,举例子来说明联合查询:内联inner join .左联left outer join .右联right outer join ... 
- SQL联合查询(内联、左联、右联、全联)的语法(转)
		最近在做一个比较复杂的业务,涉及的表较多,于是在网上找了一些sql联合查询的例子进行研究使用. 概述: 联合查询效率较高,举例子来说明联合查询:内联inner join .左联left outer j ... 
- SQL联合查询(内联、左联、右联、全联)的语法
		联合查询效率较高,举例子来说明联合查询:内联inner join .左联left outer join .右联right outer join .全联full outer join 的好处及用法. 联 ... 
- mysql中的联合查询(内联、左联、外联、右联、全联)
		转 https://www.cnblogs.com/withscorpion/p/9454490.html 联合查询效率较高,举例子来说明联合查询:内联inner join .左联left oute ... 
- 细说MySQL连接查询:内连、左连和右连
		转: 细说MySQL连接查询:内连.左连和右连 简介: MySQL 的连接查询,通常都是将来自两个或多个表的行结合起来,基于这些表之间的共同字段,进行数据的拼接.首先,要确定一个主表作为结果集,然后将 ... 
- 实例讲解MySQL联合查询
		好了终于贴完了MySQL联合查询的内容了,加上上一篇一共2篇,都是我转载的,实例讲解MySQL联合查询.那下面就具体讲讲简单的JOIN的用法了.首先我们假设有2个表A和B,他们的表结构和字段分别为: ... 
- mysql联合查询sql优化
		我们在使用mysql数据库时,经常会使用到mysql的联合查询,联合查询分为内连接和外连接,内连接查询结果是联合的表都存在匹配才会有结果,外连接则根据驱动表是否存在匹配来生成结果集. 这里使用mysq ... 
- 【转】Mysql联合查询union和union all的使用介绍
		Mysql的联合查询命令UNION和UNION ALL,总结了使用语法和注意事项,以及学习例子和项目例子,需要的朋友可以参考下 一.UNION和UNION ALL的作用和语法 UNION 用于合... ... 
- mysql联合查询union
		mysql联合查询,对多表进行组合查询 使用 UNION ALL 命令实例 显示所有 使用UNION 过滤重复的 使方法 select * from (SELECT id,name as usenam ... 
随机推荐
- 线程本地变量ThreadLocal (耗时工具)
			线程本地变量类 package king; import java.util.ArrayList; import java.util.List; import java.util.Map; impor ... 
- 极客DIY:使用树莓派制作一套“NAS+私有云盘+下载机”
			原创作者:HackLiu 0×00 前言   如果你家里有多台设备需要联网需要娱乐,你一定会或多或少遇到设备碎片化带来的烦恼.当然,已经有很多厂商包括新晋的小米.360在内的互联网公司做了这个事情 ... 
- SQL Server 【CTE + FOR XML PATH】使用笔记~
			CREATE FUNCTION [dbo].[Getxxxxxxxxx] ( @productCategoryId INT, @SplitChar varchar ) RETURNS NVARCHAR ... 
- CentOS 6.3 安装 phpmyadmin
			安装phpMyAdminphpMyAdmin是一个网络接口,通过它可以管理你的MySQL数据库.首先,我们使CentOS系统RPMForge软件库的phpMyAdmin,而不是官方的CentOS 6. ... 
- Floyd | |  jzoj[1218] | | [Usaco2009 Dec]Toll 过路费 | | BZOJ 1774 | |  我也不知道该怎么写
			写在前面:老师说这一道题是神题,事实上确实如此,主要是考察对Floyd的理解 ******************************题目.txt************************* ... 
- Daily Scrum 12.12
			今日完成任务: 解决文档上传时TagAssociation的建立异常问题:解决问题页面标签点击卡死的BUG. 发现问题: 文档下载量浏览量显示不正确: 文档打开时全都是同一个PDF: 右侧最佳资源的显 ... 
- var关键字详解
			1,var只能定义局部变量,而不能定义成员变量 2,定义的时候必须同时完成初始化,而不能使用var定义变量为null 3,var本身不是一个新类型,只是用来修饰一个可以推断出具体类型的局部变量 var ... 
- Oracle 建表,递增序列,触发器,分析函数row_number() ,partition by 子句。
			create table SC ( Id INTEGER, Name nvarchar2(20) , KC_Name nvarchar2(20), KC_score INTEGER , constra ... 
- 20145225《Java程序设计》  第6周学习总结
			20145225<Java程序设计> 第6周学习总结 教材学习内容总结 第十章 输入/输出 10.1InputStream与OutputStream 串流:衔接数据的来源和目的地就是串流对 ... 
- [学习笔记] 七步从Angular.JS菜鸟到专家(3):数据绑定和AJAX [转]
			这是"AngularJS - 七步从菜鸟到专家"系列的第三篇. 在第一篇,我们展示了如何开始搭建一个AngularaJS应用.第二篇我们讨论了scope和 $scope 的功能. 通过这整个系列的教程 ... 
