SQL删除短时间重复数据保留最后一条

是刷卡机的记录,有些刷卡刷门不开但是数据库里有记录或者短时间内刷了多次,现在想把这些短时间(3分钟内)的同一个人刷卡记录删除只保留最后一条,请问使用sql语句怎么实现?

什么数据库?mysql的话,可以试下以下方法:

DELETE 
FROM
    table_name AS  a
WHERE
    a.唯一键 <> (
SELECT
    c.maxid 
FROM
    ( SELECT max( b.唯一键 ) AS maxid FROM table_name AS b WHERE a.判断重复的列 = b.判断重复的列 ) c 
    );

你用的什么数据库

哎呦,这个有难度啊,思考一下

我有一个思路哎,时间除以3分钟后向上取整结果是否相等,来判断是否重复。

为什么不从源头解决,要删数据库这种操作。。。