0

我有两个表,T1 是每周插入的新数据,T2 是前几周的数据。我正在尝试比较它们之间是否更改了字段,称为结果。这是我到目前为止所拥有的:

SELECT t1.ID
FROM t1
INNER JOIN t2
    On t1.ID = t2.ID
WHERE t1.Outcome <> t2.Outcome

然而,无论我尝试什么版本,我似乎总是会出现错误,只是想知道执行此任务的最有效方法。谢谢

4

1 回答 1

0

您在评论中声明查询:

SELECT [t1].[ID] 
FROM [t1] INNER JOIN [t2] On [t1].[ID] = [t2].[ID] 
WHERE [t1].[Outcome] <> [t2].[Outcome]

返回错误:

指定的字段 '[t2].[id]' 可以引用 SQL 语句的 FROM 子句中列出的多个表。

当您有一个 SQL 语句引用在from子句中的多个表中找到的字段并且您没有为其指定表限定符(例如Table.Field)时,通常会出现此错误,这意味着该字段应该是哪个表不明确来源。

但是,在您发布的 SQL 代码中情况并非如此,因为您明确说明了每个字段应该来自哪个表(例如[t2].[ID],表明该字段ID应该来自 table t2)。

从上面,我只能假设您发布的 SQL 语句与运行并产生错误的 SQL 语句不同。

当然,我无法重现此错误 -

在此处输入图像描述

于 2020-01-20T18:09:44.283 回答