表如下
CREATE TABLE [dbo].[Poll](
[PollID] [bigint] IDENTITY(1,1) NOT NULL,
[LoginID] [bigint] NOT NULL,
[FacilityID] [bigint] NOT NULL,
[PolledAt] [datetime] NOT NULL,
)
我必须每晚清空这张表......但根据PolledAt
字段分组的LoginID
字段保留最大行。这意味着用户(LoginID)有多行,到晚上结束时,用户在删除后应该只有一行。该行应该是MAX(PolledAt)
值。
我可以得到我不想删除的记录:
SELECT
LoginID,
MAX(PolledAt) AS MaxPolledAt
FROM
Poll
GROUP BY
LoginID
但后来我不知道如何形成我的删除,因为我没有显示作为 pollid 的主键。我需要获取上述选择的结果并删除除该选择返回的所有内容。