assessment_id 是表seer_assessment的主键,以key和result_id分组筛选是否有重复数据,保留assessment_id较小的数据
DELETE
FROM
seer_assessment
WHERE
assessment_id IN (
SELECT
assessment_id
FROM
(
SELECT
assessment_id
FROM
seer_assessment
WHERE
(`key`, result_id) IN (
SELECT
`key`,
result_id
FROM
seer_assessment
GROUP BY
`key`,
result_id
HAVING
count(*) > 1
)
AND assessment_id NOT IN (
SELECT
min(assessment_id)
FROM
seer_assessment
GROUP BY
`key`,
result_id
HAVING
count(*) > 1
)
) AS tmpresult
)