2010-03-19 74 views
0

如果我有沒有什麼共同點SQL:連接有沒有關係

兩個表我想要做一個選擇如下表:

column from table1, column from table 2 

我該怎麼辦呢?

+0

你使用的數據庫後端是什麼? – 2010-03-19 20:00:06

+2

如果他們之間沒有任何關係,數據庫如何知道哪些行並排排列? – 2010-03-19 20:03:37

回答

1

這似乎在SQL Server一起工作假設你要乘積

SELECT A.Column, B.Column 
FROM TableA A, TableB B 
1
SELECT table1.column, table2.column 
FROM table1, table2 

給你笛卡爾的產品。不確定這是你需要的嗎?

2

嘗試UNION ALL

SELECT columnA FROM table1 UNION ALL SELECT columnB from table2

1

如果您不關心彼此相鄰的列以及數據類型是否兼容,則可以使用UNION。

SELECT columnA FROM table1 
UNION 
SELECT columnB FROM table2 
+0

澄清此技術...使用UNION關鍵字將從結果中刪除重複項。如果您想要重複項,請改爲使用UNION ALL來連接兩個表結果集。 – SnapJag 2010-03-19 21:19:50

1

好了,你不能真的除非兩個表具有有零或一個行,那麼你可以使用雅各布G公司的答覆。

否則,一行中的3行和另一行中的2行將給出笛卡爾乘積= 6行。

如果你不想交叉/笛卡爾產品,那麼你要求一個不可能的鋸齒狀記錄集。一個表中的行應該如何與另一個表中的行相關?

如果它們是真正無關的,它是2個獨立的電話......