SQL SERVER 连接查询(join...on...)
SQL SERVER联结查询包含inner join,left join,right join,outer join (on)四种。
【inner join】:行数为满足条件n*m,并且on的条件对两边的表为有效控制。
select * from table1 inner join table2 on table1.id=table2.id and table1.name=table2.name
【left join】:行数为不满足条件的n1+满足条件的n2*m,on上的条件对左边无效。
select * from table1 left join table2 on table1.id=table2.id and table1.name='123' --其中table1.name='123'无效
【right join】:行数为不满足条件的m1+满足条件的n*m2,on上的条件对右边无效。
select * from table1 right join table2 on table1.id=table2.id and table2.name='123' --其中table2.name='123'无效
【outer join】:行数为n*m,on上的条件都无效。(可省略)
select * from table1 outer join table2 on table1.id=table2.id and table1.name='123' --其中table1.id=table2.id and table1.name='123'无效 --等效于(省略) select * from table1,table2