0
所有的數據我有兩個表Q
和A
,LEFT JOIN得到兩個表
記錄A
是
QID UserID Value
1 100 A
2 100 B
3 100 C
1 101 AA
2 101 BB
3 101 CC
1 102 AAA
2 102 BBB
正如你所看到的,對於用戶102
沒有記錄QID 3
。還有另外一張表Q
。
QID Value
1 Name
2 Email
3 Site
我要的是,爲每一個用戶,他們是否回答的問題或沒有(即,天氣一進入退出在A
表或沒有),我想對所有用戶和他們的回答所有問題。像這樣的東西。
QID QValue UserID Value
1 Name 100 A
2 Email 100 B
3 Site 100 C
1 Name 101 AA
2 Email 101 BB
3 Site 101 CC
1 Name 102 AAA
2 Email 102 BBB
什麼問題一行從期望的輸出缺失,那就是
3 Site 102 NULL
因爲對於用戶102
存在A
表中沒有條目。我嘗試了LEFT JOIN
,但顯然它不會給出所需的結果,因爲所有左表已經在那裏。並且INNER JOIN
也不起作用。
它也完全有可能的答案表(表A
)有這樣
QID QValue UserID Value
1 Name 100 A
2 Email 101 BB
3 Site 102 CCC
說數據,所有用戶只要填寫了一個記錄,在這種情況下所需的輸出是這樣的
QID QValue UserID Value
1 Name 100 A
2 Email 100 NULL
3 Site 100 NULL
1 Name 101 NULL
2 Email 101 BB
3 Site 101 NULL
1 Name 102 NULL
2 Email 102 NULL
3 Email 102 CCC
如果我做了LEFT JOIN
QID
它不起作用。請建議應該做些什麼。
你有什麼嘗試? 「如果我在QID上做了LEFT JOIN,它不起作用」是什麼意思?一些ddl和樣本數據如何? sqlfiddle.com是一個很好的開始。 –
在沒有任何條件的情況下調查CROSS JOIN,您想要CROSS JOIN您的用戶和您的問題,並將您的答案留下。 – mxix