首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > Mysql >

大数据量排序情况下,怎么delete之前已经select的内容

2012-03-21 
大数据量排序情况下,如何delete之前已经select的内容?我有个表t,含a,b,c,d四个字段,无主外键、约束关系等,

大数据量排序情况下,如何delete之前已经select的内容?
我有个表t,含a,b,c,d四个字段,无主外键、约束关系等,但数据量很大,每次操作只能排序后操作一部分,比如 select * from t order by t.a asc limit 200 offset 1000,然后,我想删除这次选择出来的这200条记录,如何实现呢?

[解决办法]
delete from t order by t.a asc limit 200 offset 1000
[解决办法]
哦,DELETE中只能 

delete from t order by t.a asc limit 1000
[解决办法]
试一下
delete a from t a,(select * from t order by t.a asc limit 200 offset 1000) b where a.id=b.id
[解决办法]
本身这200条数据就不是唯一固定的 因为按照a排序之后 插入了一些数据 再按照a排序结果集就变了 所以应该在表上加一个自增列 是唯一的标识每一行 

热点排行