1

我有两张桌子,A1 和 A2。我想比较这两个表。我尝试了内部连接,但它没有给出所需的结果。

这些是这些表中的数据,

表 A1

No. Address 
1  abc
1  abc
1  def
1  def

表 A2

No. Address
1    def
1    abc
1    abc
1    def

这两个表只能通过使用No.列连接。因此,如果我使用 INNER JOIN 它会给出 16 行。我不希望这样,我只想显示 4 行。这应该是输出:

No.   Address   eq
1     abc      #
1     abc      *
1     abc      #
1     abc      #

如果 A1 中的地址等于 A2,则显示最后一列

4

2 回答 2

2

搜索 A1 表中存在但 A2 表中不存在的记录:

SELECT * FROM A1 WHERE NOT EXISTS (SELECT * FROM A2 WHERE A2.Id = A1.Id)
于 2013-01-01T00:25:36.310 回答
0

尝试用例

选择 tablea1.address=tablea2.address 然后 '*' else '#' end as eq from tablea1 inner join tablea2 on tablea1.=tablea2 的情况。

希望它可以帮助你。

于 2013-03-31T19:43:31.283 回答