我正在为脑死亡而严重受伤,因为我过去曾多次成功地做过这件事。
这一次,它无法正常工作。
我有2个表,tableA和tableB
TableA拥有所有的surmons记录
TableB有一些但并非所有的戒律。
他们之间的共同关键是surmonId。
要求是显示tableB中的surmons,其中tableA和tableB之间存在匹配,但同时显示来自tableA的所有surmons。
换句话说,从tableB给我任何存在的记录和tableA上的所有记录。
下面的lef联接查询只给出了tableB中存在的记录。
Select distinct l.surmons from tableB b left join tableA a on b.surmonId = a.surmonId.
桌子上只有10个人,这就是我所得到的。
我在哪里弄乱?
提前多多感谢
答案 0 :(得分:3)
切换表格的顺序:
SELECT DISTINCT a.surmons
FROM tableA a
LEFT JOIN tableB b
ON a.surmonId = b.surmonId
或者使用我最喜欢的RIGHT JOIN
:
SELECT DISTINCT a.surmons
FROM tableB b
RIGHT JOIN tableA a
ON b.surmonId = a.surmonId
答案 1 :(得分:1)
如果你想要tableA中的所有内容,你需要从tableA到tableB进行左连接。
Select distinct a.surmons from tableA a left join tableB b on a.surmonId = b.surmonId