1

我有两张桌子:

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

4

1 回答 1

0

如果您想要的只是基于顺序连接,最简单的方法是在每个表中添加一个新列,例如将其称为 Id,并为每一行分配一个唯一编号或将其设置为标识列类型,然后您可以运行下面的查询。

你的新表看起来像

在此处输入图像描述

查询会给你你想要的。

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 中,我认为这几乎是不可能的,最简单的选择是添加一个数字列

于 2012-10-18T01:09:14.157 回答