簡體   English   中英

如何刪除除最后一個條目之外的所有條目

[英]How to remove all entries except the last entry

我有一張桌子,我可以讓相同的條目匹配不同的事件。

在此處輸入圖像描述

在上面的示例中,我想將 1800 行保留為其最新時間,因此最后一個條目。 rest 可以刪除。 但我不確定如何 go 關於這個。 我正在使用 SQL 服務器管理工作室。

提前致謝。

如果您想要一行 AID,那么您可以使用可更新的 CTE:

with todelete as (
      select t.*,
             row_number() over (partition by AID order by event desc) as seqnum
      from t
     )
delete from todelete
    where seqnum > 1;
Delete res from 
( select t.*,row_number() over (partition by t.AID order by t.event desc) as seqNo
 from table t) res
where res.seqNo>1

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM