ASP源码.NET源码PHP源码JSP源码JAVA源码DELPHI源码PB源码VC源码VB源码Android源码
当前位置:首页 >> 数据库 >> 其他数据库 >> mysql多表查询

mysql多表查询

来源:网络整理     时间:2018-05-31     关键词:

本篇文章主要介绍了" mysql多表查询",主要涉及到方面的内容,对于其他数据库感兴趣的同学可以参考一下: 在做连表查询的时候,可以在联合的字段上面,分别加上索引字段,这样有加快搜索的速度左右连表查询时条件放在on后面和where后面的执行时机是不一样的例如test1...

在做连表查询的时候,可以在联合的字段上面,分别加上索引字段,这样有加快搜索的速度

左右连表查询时条件放在on后面和where后面的执行时机是不一样的

例如

test1表


 test2表

执行

SELECT * FROM test1 t1 LEFT JOIN test2 t2 

ON t1.no=t2.no AND t2.name='aaa';

结果为

SELECT * FROM test1 t1 LEFT JOIN test2 t2 

ON t1.no=t2.no WHERE t2.name='aaa';

从这两个查询的结果集可以看出来,on的条件是优先于where的,第一个查询是首先将t2表满足条件的筛选出来,然后用t1表左连过去,将t1表全部映射到t2上面,第二个查询是,首先t1表和t2进行左连查询后,在将满足的条件筛选出来

扩展一下

SELECT * FROM test1 t1 LEFT JOIN test2 t2 

ON t1.no=t2.no AND t1.name='zhou';

这个时候就会发现,首先筛选出t1中name=zhou的信息,然后将整个t1表左连到t2,只不过将zhou的信息优先放在第一条

右连效果同样

SELECT * FROM test1 t1 RIGHT JOIN test2 t2 

ON t1.no=t2.no AND t1.name='zhou';

SELECT * FROM test1 t1 RIGHT JOIN test2 t2 

ON t1.no=t2.no AND t2.name='bbb';



以上就介绍了 mysql多表查询,包括了方面的内容,希望对其他数据库有兴趣的朋友有所帮助。

本文网址链接:http://www.codes51.com/article/detail_4569465.html

相关图片

相关文章