我一直在研究重复行的问题,但没有发现任何与我的情况相符的问题。此外,我对SQL Server还是很陌生,所以如果我没有太多道理,我深表歉意。
因此,我有一个保存历史信息的现有表(例如TableA)。我有一个查询,该查询在每个星期日运行,并创建一个表,仅使用前一周(星期六至星期五)的输入并将其存储在另一个表(TableB)中。
我每个星期日都用TableB中的数据更新TableA,并且正在使用INSERT INTO,它可以工作。但是有时有时我可能不得不在周中手动运行查询,在这种情况下,我可能会在周日得到重复。
我该如何精确地写入INSERT INTO,这样我就不会得到重复的行并保留最新执行查询中的值?
答案 0 :(得分:0)
您尚未提供架构的详细信息,但是在插入之前检查重复项的最简单方法是使用NOT EXISTS
,例如以下示例查询。
INSERT INTO TARGET_TABLE (Col1, Col2 ...)
SELECT Col1, Col2 .. FROM [SOURCE] S
WHERE NOT EXISTS
(
SELECT 1 FROM TARGET_TABLE T WHERE T.UniqueIdentifierColumn= S.UniqueIdentifierColumn
)
答案 1 :(得分:0)
尝试这个:
implementation fileTree(include: ['*.jar'], dir: 'path/to/dir')