联表查询
只要两个表的公共字段有匹配值,就可根据指定方法将两个表中的记录进行组合
left join(左联接):返回包括左表中的所有记录和右表中联接字段相等的记录
right join(右联接):返回包括右表中的所有记录和左表中联接字段相等的记录
inner join(等值联接):返回两个表中联接字段相等的记录
基本语法:
select * from table1 left/right/inner join table2 on table.field1 compopr table2.field2
说明:
1. 多个数据表的联接可以类似方法进行扩展,如
select * from (table1 left join table2 on table.field1 compopr table2.field2) left join table3 on table2.field2 compopr table3.field2
或者换采用JOIN语句嵌套的方式,如
select * from table1 left join (table2 left join table 3 ) on table.field1 compopr table2.field2 AND on table2.field2 compopr table3.field2
2. 一个JOIN语句中可以联接多个ON子句, 如
select * from table1 left join table2 on table.field1 compopr table2.field2 AND on table1.field2 compopr table2.field2 OR on .....
3. 三中联接的具体实例
表A记录如下:
aID aNum
1