我有个问题
SELECT
d.GUID, w.word
FROM
dictionary d
JOIN
word w ON w.ID = d.ID_word
WHERE
w.id_language = #ID#;
如果 #ID# = 1
它返回表
GUID | word
-----------
1 | A
2 | B
3 | C1
3 | C2
4 | D1
4 | D2
5 | E
如果 #ID# = 2
它返回表
GUID | word
-----------
1 | AA
2 | BB1
2 | BB2
3 | CC
4 | DD1
4 | DD2
6 | FF
现在我想合并这两个表/查询,得到一个如下所示的表:
GUID | word1 | word2
--------------------
1 | A | AA
2 | B | BB1
2 | B | BB2
3 | C1 | CC
3 | C1 | CC
4 | D1 | DD1
4 | D1 | DD2
4 | D2 | DD1
4 | D2 | DD2
所以基本上它是一个表,由具有相同guid的行的笛卡尔积组成
3条答案
按热度按时间sr4lhrrt1#
您不需要子查询:
我认为使用CTE更容易阅读:
在这两个例子中(以及你的问题所暗示的),只有一个单词的guid被过滤掉。这些可以通过调整查询来包含。
olhwl3o22#
t9eec4r03#
你可以
JOIN
你的两个问题GUID
: