当前位置:Gxlcms > PHP教程 > 两表连接查询的问题

两表连接查询的问题

时间:2021-07-01 10:21:17 帮助过:34人阅读

表A
id title
1 姓名
2 单位
3 年龄
--------------------------
表B
id pid content
1 1 张三
2 2 计生委
3 1 李四
4 2 发改委
5 3 46
6 1 赵五
7 2 财政部
--------------------------
想连接两表实现输出如下:
id title pid content
1 姓名 1 张三
2 单位 2 计生委
3 年龄 null null
1 姓名 1 张三
2 单位 2 计生委
3 年龄 3 46
1 姓名 1 张三
2 单位 2 计生委
3 年龄 null null

===========================
请问sql语句如何实现,想了很久
目前我试过单纯用左连接无法输出一个两个B表null行


回复讨论(解决方案)

join left on 表A.id=表B.pid
应该就可以了,不知你是如何写的

Select * from a left join b on a.id=b.pid
无法列出两行NULL
如果只查询一组,如只查询表A的前三行和表B的前两行,是可以列出共三行,最后一行content为NULL的情况的
而如果是全部一起查询,因为表B中有一项(id=5)符合表A的(id=3),故不会返回两行NULL
只返回和B表一样的共七行

在SQL版块得到答案了

人气教程排行