0

如果我想从彼此中减去字段,

即在 A 中有 11 个字段被描述为“Faktura zakupu”,而在 B 中有 5 个字段被描述为“Faktura zakupu”。我想以 6 项“Faktura zakupu”的形式返回记录(11-5 = 6)

我尝试了 EXCEPT 操作,但它没有返回所需的结果

我需要执行什么操作?

在此处输入图像描述

4

1 回答 1

1

您可以将行号添加到两个表中的每一行。然后 SQL Server 可以确定(Faktura zakupu, Original)表 A 中的第一个与表 B 中的第一个重复,(Faktura zakupu, Original)并在操作过程中将其删除EXCEPT

SELECT Name, StatusReq, ROW_NUMBER() OVER (PARTITION BY Name, StatusReq ORDER BY (SELECT NULL))
FROM a

EXCEPT

SELECT Name, StatusReq, ROW_NUMBER() OVER (PARTITION BY Name, StatusReq ORDER BY (SELECT NULL))
FROM b

它将从表 A 中返回 6 行...编号为 6 到 11。

于 2021-10-14T10:42:34.653 回答