比较两个表中的两列

问题描述 投票:0回答:1

我有两个表,每个表有 2 列。表 1 中的 A 列和 B 列。表 2 中的 C 列和 D 列。

我想比较 A 列和 C 列以及 B 列和 D 列。

我希望结果在中心添加第五列,并带有某种类型的匹配指示符,例如:

A B 指示器 C D

并显示以下结果:

  1. A 与 C 匹配,B 与 D 匹配。

  2. 两个匹配之一(A 到 C)或(B 到 D)

  3. A 和 B 都不匹配 C 和 D(分别)

对于#3,它将显示空白字段,因为没有任何匹配项。

这是 1、2 和 3 的示例:

  1. 苹果橙搭配苹果橙
  2. 苹果葡萄偏苹果橙
  3. 李子奇异果无(空白)(空白)

预先感谢您的帮助!

sql ms-access
1个回答
0
投票

这不是完整的答案。但它应该能让你了解你正在寻找的东西 下次提供数据示例。 表1

身份证 A B
1 苹果 橙色
2 苹果 葡萄
3 李子 猕猴桃

表2

身份证 A B
1 苹果 橙色
2 苹果 橙色
SELECT Table1.A, Table1.B, Table2.C, Table2.D,
FORMAT(EXISTS (SELECT * FROM Table2 WHERE Table2.C = Table1.A),"Yes/No") AS Matched_AC,
FORMAT(EXISTS (SELECT * FROM Table2 WHERE Table2.D = Table1.B),"Yes/No") AS Matched_BD
FROM Table1
LEFT JOIN Table2 ON Table1.ID = Table2.ID;

结果应该是

A B C D 匹配_AC 匹配_BD
苹果 橙色 苹果 橙色 是的 是的
苹果 葡萄 苹果 橙色 是的 没有
李子 猕猴桃 没有 没有
© www.soinside.com 2019 - 2024. All rights reserved.