0

两张桌子。我在两个表中都有 a 列(日期时间类型)和 b 列(数字类型)。我想在两个表中搜索列 a 并只获取不匹配的列。然后仅显示没有匹配日期时间列 a 的列 a 和 b。

    Select Column b from Table 1 
    left join Table 2
    where Table1.Column a <> Table2.Column a

它是否正确??

4

2 回答 2

2

NOT IN您可以使用@drjay 或子句指示的左连接。我个人更喜欢 NOT in 因为它更容易阅读。

SELECT [Column b] 
FROM [Table 1]
WHERE [Column a] NOT IN (
    SELECT [Column a]
    FROM [Table 2]
)
于 2012-06-17T04:34:09.527 回答
1

你很亲密。不确定确切的语法,因为我没有 SQL Server。但在 MySQL 中是:

SELECT * 
FROM table_1 t1 
LEFT OUTER JOIN table_2 t2 ON t1.date = t2.date 
WHERE t1.date <> t2.date;

你的问题的逻辑应该是相似的。如有必要,只需更改语法。

于 2012-06-17T04:30:44.537 回答