【发布时间】:2018-11-13 19:41:04
【问题描述】:
我正在使用 access 2013 并尝试识别向供应商支付的重复付款。我使用下面的 SQL 查询来识别不同类型的重复项,但它没有给出预期的结果,因为有时两个标准是不同的,例如发票编号和发票日期。
SELECT
Base.ID AS SerialNumber,
Base.CoCd AS CoCode,
Base.DocumentNo AS DocID,
Base.ClrngdocNo AS ClearingDoc,
Base.DocumentType AS DocType,
Base.Account AS VendorName,
Base.Reference AS InvoiceNumber,
Base.DocumentDate AS InvoiceDate,
Base.GrossInvoiceAmount AS InvAmount
FROM RawData2017TillDate AS Base
INNER JOIN RawData2017TillDate AS duplicate
ON (Base.ID <> duplicate.ID)
AND (Base.Account = duplicate.Account)
AND (Base.Reference <> duplicate.Reference)
AND (Base.DocumentDate = duplicate.DocumentDate)
AND (Base.GrossInvoiceAmount = duplicate.GrossInvoiceAmount)
ORDER BY Base.GrossInvoiceAmount DESC , Base.reference DESC;
我只想通过单个查询来识别在发票编号开头或结尾添加一个或多个字符的重复项,如下例所示 2713565 2713565R, 01456 1456, I-0001118588 1118588
此外,如果我能获得更好的查询来根据其他标准识别重复项,我们将不胜感激。我正在寻找所有条件的单个查询。
提前致谢!
【问题讨论】:
标签: sql ms-access ms-access-2013