【发布时间】:2017-08-08 18:42:14
【问题描述】:
上下文
我正在使用 SQL Server Express 来跟踪进出操作。我有两张桌子(table1,table2)。 Table1 包含 ID 和 startTime 键,而 Table2 包含 ID、startTime 和 endTime。
每当输入一个条目时,都会在 Table1 中填充一行,其中包含所有键。然后将这些键插入到 Table2 中。
问题
我遇到的问题是我希望它识别 ID 是否已存在于 Table2 中 - 如果存在,则更新该 ID 的行而不是创建新行。
当前工作
IF(COUNT(DISTINCT ID) > 1 --When ID has been seen more than once?
INSERT INTO Table2(ID, startTime)
SELECT ID, CURRENT_TIMESTAMP
FROM Table1
WHERE ID = Table2.PTID
ELSE
INSERT INTO Table2(ID, startTime)
SELECT ID, CURRENT_TIMESTAMP
FROM Table1
提前感谢您的帮助!对 SQL 有点陌生,如果我能做些什么来改进我的问题,请告诉我。
【问题讨论】:
标签: sql stored-procedures ssms sql-insert