1.select a.*,b.* from S_groupuser a,S_group b where a.idgroup*=b.id and b.groupname='amd'2.select a.*,b.* from S_groupuser a left join S_group b on a.idgroup=b.id where b.groupname='amd'
这两条sql语句的执行结果是否应该相同?
这两条sql语句的执行结果是否应该相同?
当你的b.id有空值等不合a.idgroup的时候就知道了
2.两个表作连接,列出所有两个表中的所有id和在一起的记录(不重复)
即a表又b表没有或b表有a表没有的也会列出
请问我的两条语句是不是都是左连接?如果是为什么会不一样呢?
如果你没有b.groupname='amd'这个条件的话,两句是完全一样的。
但是如果你加了这个条件,搜索的意义就不一样了。可以写成
select a.*,b.* from S_groupuser a left join S_group b on a.idgroup=b.id where (b.groupname='amd'or b.groupname is null)