我有一张桌子,上面有描述建筑物状况的句子。这些句子有的属于“完成”的范畴,有的属于“准备”的范畴。我还有两张表(完整的,准备好的),其中包括建筑物 ID 和句子 ID。所以每栋建筑都用两张表来描述(完整的,准备好的)。我想创建一个查询,其结果将有两列-> 建筑物的描述。
----------- ----------------------- ----------------------
SENTENCES COMPLETE PREPARING
----------- ----------------------- ----------------------
ID | text ID_HOUSE | ID_SENTENCES ID_HOUSE | ID_SENTENCES
----------- ------------------------ ------------------------
1 | One 1 | 1 1 | 3
2 | Two 1 | 2 2 | 1
3 | Tree 2 | 2
我想要这样的东西:(对于房子 1)
COMPLETE | PREPARING
------------------------------
One | Tree
Two | NULL
我创建了这个,但它不起作用。
SELECT s.text AS complete,
(
SELECT s.text
FROM sentences AS s
LEFT JOIN preparing AS p ON s.id = p.id_sentences
WHERE s.id_house = 1
) AS preparing
FROM sentences AS s
LEFT JOIN complete AS c ON s.id = c.sentences
WHERE s.id_house = 1
这就是我得到的
1242 - 子查询返回多于 1 行
方案
我试着做一个图表,但不幸的是我没有足够的声望点来上传,所以它隐藏在这里:。