2012-10-18 145 views
1

我有兩個表:將兩個select語句到一個表

tbl_origin tbl_destination 

Origin   Dest 
------   ---- 
AMER   CBU 
PHIL   POT 
TAI    POT 
BAT    CBU 

我想在一個表中得到一個結果:

Origin  Dest 
-------------------- 
AMER   CBU 
PHIL   POT 
TAI   POT 
BAT   CBU 

我用了兩個選擇語句,但我得到類似的結果此:

Origin  Dest 
-------------------- 
AMER   CBU 
AMER   POT 
AMER   POT 
AMER   CBU 
PHIL   CBU 
PHIL   POT 
PHIL   POT 
PHIL   CBU 
TAI   POT 
TAI   POT 
TAI   POT 
TAI   POT 
BAT   CBU 
BAT   POT 
BAT   POT 
BAT   CBU 

我正在使用MS ACCESS進行此操作。我試圖使用交叉連接,但我似乎得到一個錯誤。

+0

你只有一列tbl_origin和tbl_destination?所以對於tbl_origin中的每一行,你想要在tbl_desitanation中並排放置一行? –

+0

是Ricky。 G ... – user1532113

+0

比賽是否重要?如果它依賴於條目的順序,那就是在尋求麻煩。你需要有唯一的鍵和外鍵。 – ApplePie

回答

0

如果你想要的只是基於順序進行連接,最簡單的方法就是在每個表中添加一個新列,將其稱爲Id,併爲每行分配一個唯一編號,或者將其設置爲標識列類型,然後你可以運行下面的查詢。

您的新表看起來像

enter image description here

查詢會給你想要的東西。

select ori.origin, dest.dest 
from tbl_origin ori 
inner join tbl_destination dest on dest.id = ori.id 

如果你不想在訪問恐怕至少在SQL Server,您可以使用臨時表等,以獲得周圍添加ID /標識列,那麼你只有有限的選擇,但在訪問我想它幾乎是不可能的,最簡單的選擇是添加一個數字列