对于INNER JOIN,没有有效的区别,尽管我认为第二种选择更清洁。
对于LEFT JOIN,有很大的不同。ON子句指定将从表中选择要比较的记录,WHERe子句过滤结果。
示例1:返回tbl 1中的所有行,并将它们与tbl2中boolfield = 1的适当行进行匹配
Select *From tbl1 LEFT JOIN tbl2 on tbl1.id=tbl2.id and tbl2.boolfield=1
示例2:将仅包括tbl1中的行,其中tbl2中具有匹配行且boolfield = 1的行。它联接表,然后过滤掉不符合条件的行。
Select *From tbl1 LEFT JOIN tbl2 on tbl1.id=tbl2.idWHERe tbl2.boolfield=1
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)