2017-04-06 55 views
0

對於表Y中的每一行,我需要表X中的當前行的副本,從表Y的字段1中獲取。我需要在這裏使用哪種連接?

謝謝大家!

表X

Field 1  Field 2 
null   A 
null   B 
null   C 

數據表Y

Field 1 
    1 
    2 
    3 

希望的輸出

Field 1  Field 2 
    1   A 
    1   B 
    1   C 
    2   A 
    2   B 
    2   C 
    3   A 
    3   B 
    3   C 

回答

2

看起來像一個cross join

select y.field1, x.field2 
from x cross join 
    y; 
+0

完美!我正在經歷所有我能想到的聯結。完全錯過了Cross交叉。謝謝! – hero9989

0

看起來像一個無條件選擇兩個表中沒有匹配的IDS

喜歡的東西

select tableY.column1, tableX.column2 
from tableY, tableX 
order by tableY.column1 asc, tableX.column2 asc 

應該這樣做。

順便說一句。這是一個學校問題,因爲那樣我就不應該回答這個問題了。

+0

哈哈,別擔心,我不是學生:)只需重新編寫查詢來簡化問題。 – hero9989

0

嘗試此查詢:

SELECT #Tabley.Field1 , #TableX.Field2 
FROM #TableX ,#Tabley 
+1

雖然這段代碼片段是受歡迎的,並且可能會提供一些幫助,但如果它包含* how *和* why *的解釋](// meta.stackexchange.com/q/114762)問題。請記住,你正在爲將來的讀者回答這個問題,而不僅僅是現在問的人!請編輯您的答案以添加解釋,並指出適用的限制和假設。 –