我有一个带有自动增量 id 的表,我正在执行该操作
INSERT INTO ( ... ) SELECT ... FROM ...
有没有办法获取已插入的 id 列表?
我想我可以在插入之前获得最大ID,然后在插入之后获得最大ID,并假设中间的所有内容都是新的,但是如果从其他地方插入一行,我可能会遇到问题。有没有正确的方法来做到这一点?
我使用的是 SQL Server 2005
最佳答案
使用output条款。
DECLARE @InsertedIDs table(ID int);
INSERT INTO YourTable
OUTPUT INSERTED.ID
INTO @InsertedIDs
SELECT ...
关于sql-server - SQL Server 插入标识列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4619343/