关于sql:我对LEFT JOIN的尝试未产生预期的结果。有任何想法吗?

My attempt at LEFT JOIN isn't producing desired result. Any ideas?

由于我过去几次成功做到这一点,我正遭受脑部死亡的严重困扰。

这一次,它不起作用。

我有2个表,tableA和tableB

TableA具有所有记录记录

TableB有一些,但不是全部。

它们之间的公用密钥是surmonId。

要求是在tableA和tableB之间存在匹配项的情况下显示来自tableB的监视符,但同时显示来自tableA的所有监视符。

换句话说,从tableB给我任何存在的记录以及tableA上的所有记录。

下面的lef join查询仅向我提供tableB中存在的记录。

1
SELECT DISTINCT l.surmons FROM tableB b LEFT JOIN tableA a ON b.surmonId = a.surmonId.

tableB上只有10条召唤物,这就是我所得到的全部。

我在哪里弄糟?

非常感谢


表的任一切换顺序:

1
2
3
4
SELECT DISTINCT a.surmons
FROM tableA a
LEFT JOIN tableB b
   ON a.surmonId = b.surmonId

或者使用我最喜欢的RIGHT JOIN

1
2
3
4
SELECT DISTINCT a.surmons
FROM tableB b
RIGHT JOIN tableA a
   ON b.surmonId = a.surmonId


如果要从tableA获得所有内容,则需要从tableA到tableB进行左连接。

1
SELECT DISTINCT a.surmons FROM tableA a LEFT JOIN tableB b ON a.surmonId = b.surmonId