我有一个单列表Ids
,它的列 ID 是 type uniqueidentifier
。我有另一个表MyTable
,它有一个 ID 列以及许多其他列。我想MyTable
一次删除 1000 行,其中的 IDMyTable
与Ids
.
WHILE 1 = 1 BEGIN
DELETE t FROM (SELECT TOP 1000 ID FROM Ids) d INNER JOIN MyTable t ON d.ID = t.ID;
IF @@ROWCOUNT < 1 BREAK;
WAITFOR DELAY @sleeptime; -- some time to be determined later
END
这似乎不起作用。该声明实际上应该是什么?