sql inner[right][left] join 的使用

准备条件:

假定有两个表

table1:

ID   DATA

1     A

2     B

3     C

table2:

ID   DATA

1    A

2    B

4    D

问题提出:

1.如果要查找table1和table2中相同的数据,

则sql语句为: SELECT table1.ID, table1.DATA, table2.ID, table2.DATA
FROM table1 INNER JOIN table2 ON (table1.DATA = table2.DATA) AND (table1.ID = table2.ID);

查询结果为:

table1_IDtable1_DATAtable2_IDtable2_DATA
1A1A
2B2B

 

2.如果要查找在table1中且也在table2中的数据,

则sql语句为:SELECT table1.ID, table1.DATA, table2.ID, table2.DATA
FROM table1 LEFT JOIN table2 ON (table1.DATA = table2.DATA) AND (table1.ID = table2.ID);

查询结果为:

table1_IDtable1_DATAtable2_IDtable2_DATA
1A1A
2B2B
3C  

 

3.如果要查找在table2中且也在table1中的数据,

则sql语句为:SELECT table1.ID, table1.DATA, table2.ID, table2.DATA
FROM table1 RIGHT JOIN table2 ON (table1.DATA = table2.DATA) AND (table1.ID = table2.ID);

查询结果为:

table1_IDtable1_DATAtable2_IDtable2_DATA
1A1A
2B2B
4D

 

sql 的 INNER JOIN 、LEFT JOIN 、RIGHT JOIN 代码和查询效果如上。

希望和大家多多交流....

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值