-- 刪除重複數據
當一個數據表中,存在重複的數據,假設有兩條重複的數據,須要你刪除任意一條重複的,這裏我用的是刪除重複數據中ID最大的一條,相反,若是重複多條,能夠把重複的數據都查出來,而後取最大的ID,根據條件刪除ID並非最大的便可,這裏我就說明刪除兩條重複數據的場景
sql
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 )