删除mysql数据库数据
发布网友
发布时间:2022-04-20 21:09
我来回答
共3个回答
热心网友
时间:2022-04-10 06:50
倒是有个思路,不过你的记录量太大,这个执行效率估计就有问题了。
我的思路是
1、先select 出来一个记录集,条件是点击单价,点击量,下载量,市场平均点击量一致的数据,另外一个最重要的条件就是选出行号最大的记录(因为你要保留一条,怎么用行号这个网上有很多说明,我就不说了),这样,你就可以获得,你需要保留的记录集了。
大概的语句是:
select max(rec_no),a,b,c,d from table where a=b and a=c and a=d group by a,b,c,d
a,b,c,d代表你的那几个字段,rec_no,如果你的表里没有这个字段的话,就要上网查一下怎么给mysql记录加行号,但是唯一担心的就是效率会慢,因为你的记录太多了
2、有了这个记录集,你可以有两种处理方式,一种是手工处理,把上面的结果集插入一个空表里,然后删除旧表,再把空表改名就可以了。另一种是写语句处理delete的时候,和你检索出来的数据集匹配,符合条件的留下,否则删除。
这个我没有实际的环境,仅仅提供个参考思路追问这个我已经执行过了,但是由于量太大了,执行效率非常慢,如果有类似全文搜索的方式到是可以看一下!
热心网友
时间:2022-04-10 08:08
查询出满足条件的重复数据插入到新表,在删除原表重复的数据,把新表的数据在插入到原表中
热心网友
时间:2022-04-10 09:42
以 "sql 删除重复数据" 为关键字百度搜索,第一篇文章应该能帮到你