mysql中如何删除一张表中的第n行到第m行的数据
例如有一个user(用户)表,表中有10条数据,我想删除里面的第4行到第8行的数据,那么如何实现呢?我用sql语句写的几次,总是报错,请大家帮我解决这个问题!长治邮政,谢...
例如有一个user(用户)表,表中有10条数据,我想删除里面的第4行到第8行的数据,那么如何实现呢?
我用sql语句写的几次,总是报错,请大家帮我解决这个问题!
长治邮政 ,谢谢你的回答,你说的Load data infile 这种方法我知道,我想知道的是如何用一条sql 语句解决,两条sql语句也行. 展开
我用sql语句写的几次,总是报错,请大家帮我解决这个问题!
长治邮政 ,谢谢你的回答,你说的Load data infile 这种方法我知道,我想知道的是如何用一条sql 语句解决,两条sql语句也行. 展开
5个回答
展开全部
如果use表有主键的话就可以做到,假设是userid。
开始我想的是:
delete from user where userid in (select userid from user limit 4,8);
但mysql的报错是:The version of Mysql doesn't yet support 'LIMIT &IN/ALL/ANY subquery'。就是现版本不支持limit 和 in all any 联合的子查询。
换一种思路如下:
delete from user where exists (select * from (select userid from user limit 4,8) as a where a.userid=user.userid);
就可以了,用到了相关子查询。
开始我想的是:
delete from user where userid in (select userid from user limit 4,8);
但mysql的报错是:The version of Mysql doesn't yet support 'LIMIT &IN/ALL/ANY subquery'。就是现版本不支持limit 和 in all any 联合的子查询。
换一种思路如下:
delete from user where exists (select * from (select userid from user limit 4,8) as a where a.userid=user.userid);
就可以了,用到了相关子查询。
2015-07-20 · 知道合伙人软件行家
关注
展开全部
如:n行为10
m行为30
删除这之间的数据用
delete from user where 10 > num < 30
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
没有主键的话,可以先unload下数据,删除原来的10条记录,再把要用的数据LOAD就OK,如果不影响其它表的话!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
delete from user limit 4,4
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
引用你以为你以为de的回答:
如:n行为10 m行为30 删除这之间的数据用 delete from user where 10 > num < 30
如:n行为10 m行为30 删除这之间的数据用 delete from user where 10 > num < 30
展开全部
整个表数据都被删了,骗子
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询