refactor: 优化删除过期历史密码 SQL

This commit is contained in:
2024-05-19 19:49:10 +08:00
parent 0b76d5ca33
commit c1e9d318e0

View File

@@ -2,15 +2,14 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="top.continew.admin.system.mapper.UserPasswordHistoryMapper">
<delete id="deleteExpired">
DELETE FROM sys_user_password_history
WHERE id NOT IN (
SELECT * FROM (
SELECT id
FROM sys_user_password_history
WHERE user_id = #{userId}
ORDER BY create_time DESC
LIMIT #{count}
) t1
)
DELETE t1 FROM sys_user_password_history t1
LEFT JOIN (
SELECT id
FROM sys_user_password_history
WHERE user_id = #{userId}
ORDER BY create_time DESC
LIMIT #{count}
) t2 ON t2.id = t1.id
WHERE t2.id IS NULL
</delete>
</mapper>