我有以下查询:
UPDATE TOP (@MaxRecords) Messages
SET status = 'P'
OUTPUT inserted.*
FROM Messages
where Status = 'N'
and InsertDate >= GETDATE()
在消息表中有优先级列,我想首先选择高优先级消息。所以我需要一个 ORDER BY。但是我不需要在更新运行之前对输出进行排序,而是对数据进行排序。
据我所知,不可能将 ORDER BY 添加到 UPDATE 语句中。还有其他想法吗?