将两个select语句组合到一个表中

时间:2012-10-18 00:38:49

标签: ms-access-2007

我有两张桌子:

tbl_origin    tbl_destination

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

我想在一张表中得到一个结果:

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

我使用了两个select语句,但得到的结果如下:

 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。我试图使用交叉连接,但我似乎得到一个错误。

1 个答案:

答案 0 :(得分: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

如果您不想添加Id / identity列,那么您在Access中的选项有限,我担心,至少在SQL Server中您可以使用临时表等来解决,但在Access中我会认为它几乎不可能,最简单的选择是添加数字列