Maison  >  Article  >  développement back-end  >  两表连接查询的问题

两表连接查询的问题

WBOY
WBOYoriginal
2016-06-23 14:09:57976parcourir

表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版块得到答案了

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn