我有两个表,T1 是每周插入的新数据,T2 是前几周的数据。我正在尝试比较它们之间是否更改了字段,称为结果。这是我到目前为止所拥有的:
SELECT t1.ID
FROM t1
INNER JOIN t2
On t1.ID = t2.ID
WHERE t1.Outcome <> t2.Outcome
然而,无论我尝试什么版本,我似乎总是会出现错误,只是想知道执行此任务的最有效方法。谢谢
您在评论中声明查询:
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 语句不同。
当然,我无法重现此错误 -