【发布时间】:2010-10-06 11:53:30
【问题描述】:
我有两个表 tbl1 和 tbl2,都有两列,一列用于 id,一列用于产品。我想提取两者中的行,即 tbl1.id = tbl2.id 和 tbl1.product = tbl2.product 的行,并将 tbl1 和 tbl2 中的行合并为一行。
我想这是这样的:
SELECT tbl1.\*, tbl2.\*
FROM tbl1, tbl2
WHERE tbl1.id = tbl2.id
AND tbl1.product = tbl2.product
或
SELECT tbl1.\*, tbl2.\*
FROM tbl1
INNER JOIN tbl2
ON tbl1.id = tbl2.id
AND tbl1.product = tbl2.product
?
我还有一个问题,即两个电子表格中的产品名称不同。
我添加了一个映射表,其中包含 tbl1 中的产品名称以及每行中对应的 tbl2 产品名称。
我怎么知道用这个添加的表实现上述 SQL 查询的等效项 (其中存在于两者中的每个 id/product 组合只输出一行)?
感谢您的帮助。
(注意:我使用的是 MS Access)
【问题讨论】:
标签: sql ms-access join mapping distinct