-- 删除重复数据
当一个数据表中,存在重复的数据,假设有两条重复的数据,需要你删除任意一条重复的,这里我用的是删除重复数据中ID最大的一条,相反,如果重复多条,可以把重复的数据都查出来,然后取最大的ID,根据条件删除ID并不是最大的即可,这里我就说明删除两条重复数据的场景
DELETE
FROM
t_sys_emp_role_catag
WHERE
id IN (
SELECT
a.id
FROM
(
SELECT
max(EMP_ROLE_CATAG.id) id
FROM
t_sys_emp_role_catag EMP_ROLE_CATAG
GROUP BY
EMP_ROLE_CATAG.role_id,
EMP_ROLE_CATAG.catalog_id,
EMP_ROLE_CATAG.emp_no
HAVING
count(1) > 1
ORDER BY
EMP_ROLE_CATAG.emp_no
) a
)