弱问:以下SQL语句有什么不同。
select id,name
from a join b on a.id=b.id and a.name= 'abc '
与
select id,name
from a join b on a.id=b.id
where a.id= 'abc '
------解决方案--------------------你可以自己查询从而得出结果来
------解决方案--------------------有区别的。
select id,name from a join b on a.id=b.id and a.name= 'abc '
这个语句中a.id=b.id and a.name= 'abc '都是连接的条件,相当于
select id,name from a join b on (a.id=b.id and a.name= 'abc ')
而第二个,where后的条件,是相对于连接后的结果而言,即先用连接过滤,再用where后的条件过滤。