mysql多字段组合删除重复行

DELETE
FROM boll_param
WHERE id in (
SELECT a.id
FROM (
SELECT id
FROM boll_param
WHERE (symbol, time_frame, ma, k, std, N, 回测起始日期, 回测结束日期, 交易方向) IN (
SELECT symbol,
time_frame,
ma,
k,
std,
N,
回测起始日期,
回测结束日期,
交易方向
FROM boll_param
GROUP BY symbol, time_frame, ma, k, std, N, 回测起始日期, 回测结束日期, 交易方向
HAVING count(*) > 1
)
AND id NOT IN (
SELECT minid
FROM (
SELECT min(id) AS minid
FROM boll_param
GROUP BY symbol, time_frame, ma, k, std, N, 回测起始日期, 回测结束日期, 交易方向
HAVING count(*) > 1
) dt
)) a
)

猜你喜欢

转载自www.cnblogs.com/aiquant/p/10877263.html