select a.*,b.* from a inner join b on a.id = b.id
select a.*,b.* from a,b where a.id = b.id
select a.*,b.* from a left outer join b on a.id = b.id
select a.*,b.* from a,b where a.id *= b.id
如上的功能是雷同的,但是微软推荐大家使用 inner join or left/right outer join,据说如果你的连接很复杂的话,select a.*,b.* from a,b where a.id *= b.id 这种写法会导致你不想要的结果,join则比较严谨
inner join 是内连接,where 是条件判断语句,用where语句可以实现内连接的功能,但区别在于where 语句还可以加上其他条件,而inner join则不可以了。
例如:
select a.*,b.* from a inner join b on a.id = b.id
等同于
select a.*,b.* from a,b where a.id = b.id
但如果用语句二的还可以接着写条件,语句一则要新添where语句