这个我自己写的,效率什么的没考虑过:
DELETE FROM tb_trademarksjaddtype_23
WHERE row not in
(
SELECT t.row FROM
(
SELECT row
FROM tb_trademarksjaddtype_23
GROUP BY ann_num,reg_num,rn,type
HAVING COUNT(1) > 1 //将数量>1的取出一个
UNION
SELECT row
FROM tb_trademarksjaddtype_23
GROUP BY ann_num,reg_num,rn,type
HAVING COUNT(1) <= 1 //将数量小于等于1的取出来
) t
);