mysql 清除重复数据
python代码
def clean_table(db: Session):
select_sql = ('SELECT MIN(id) as id,col1,col2,COUNT(*) FROM table '
'GROUP BY col1,col2 '
'HAVING COUNT(*) > 1 LIMIT 200 ')
while True:
select_sql_res = db.execute(select_sql).fetchall()
if not select_sql_res:
break
delete_ids = [str(item["id"]) for item in select_sql_res]
delete_sql = ('DELETE FROM table '
f'WHERE id in ({",".join(delete_ids)}) ')
db.execute(delete_sql)
db.commit()
本文作者:bitterteaer
本文链接:https://www.cnblogs.com/bitterteaer/p/18150763
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步