几种MySQL联合查询的流行解释

表一



援助的日期
1 A1
2 A2
3 A3


表B



投标bdate
1 B1
2 B2
4 B4


两个表A和B被连接以取出相同的ID字段。

SELECT * FROM内连接在a.aid =家


这是比赛中唯一的数据。

此时,删除是:

1 A1 B1
2 A2 B2


然后左连接指:

SELECT * FROM加入B a.aid =家左


首先删除所有数据A,然后再加上A,B,数据。

此时,删除是:

1 A1 B1
2 A2 B2
3个空字符

同样也有权利加入。
首先要取出B表中的所有数据,然后添加与A和B匹配的数据。
此时,删除是:

1 A1 B1
2 A2 B2
4空字符B4

左连接或左外连接。
左侧外向连接的结果集包括左外子句中指定的左表的所有行,而不只是连接列匹配的行。如果左行在右行有一行,则没有表,则相关结果集将所有选择列表右行表为空。

例子

人表:



id_p


地址
西蒂



亚当斯
约翰
牛津街
伦敦



布什
乔治
第五大道
纽约



卡特
托马斯
长安街
北京



订单表:



id_o
-ORDERNO.
id_p



七十七万八百九十五




四十四万六百七十八




二十二万四百五十六




二十四万五百六十二




三十四万七百六十四
六十五




左连接的一个例子(左连接)

现在,我们想列出所有的人和他们的订单——如果有的话。
您可以使用以下SELECT语句:

选择persons.lastname,persons.firstname,Orders.OrderNo
从人
左连接的命令
在id_p = orders.id_p人。
为了persons.lastname

结果集:





-ORDERNO.


亚当斯
约翰
二十二万四百五十六


亚当斯
约翰
二十四万五百六十二


卡特
托马斯
七十七万八百九十五


卡特
托马斯
四十四万六百七十八


布什
乔治




左连接关键字从左表(人员)返回所有行,即使在右表(订单)中,也没有匹配行。