社区
MySQL
帖子详情
删除全部数据,但保留最后添加的10条,SQL语句怎么写?在线等!
mfkiqpl
2007-08-29 02:39:33
RT,
删除一个表的全部数据,仅保留最后添加的10条。
求个SQL。。
这样写行不通:
delete from `onlist` where `id` not in (select `id` from `onlist` order by `id` desc limit 10)
...全文
724
9
打赏
收藏
删除全部数据,但保留最后添加的10条,SQL语句怎么写?在线等!
RT, 删除一个表的全部数据,仅保留最后添加的10条。 求个SQL。。 这样写行不通: delete from `onlist` where `id` not in (select `id` from `onlist` order by `id` desc limit 10)
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
青锋-SS
2007-08-29
打赏
举报
回复
谢谢楼主,多了个角角
mfkiqpl
2007-08-29
打赏
举报
回复
不等了。。谢谢: yueliangdao0608
结贴了
mfkiqpl
2007-08-29
打赏
举报
回复
谢谢:yueliangdao0608
你的是建临时表,如果没有更好的办法,就只有用你这个办法了。。
再等等看有没有更好的办法。。
回:sdhylj(青锋-SS)
与TOP类似的写法就是limit 。但子查询里不能用 limit
青锋-SS
2007-08-29
打赏
举报
回复
?
青锋-SS
2007-08-29
打赏
举报
回复
没有类似的语句,就像你写的limit
懒得去死
2007-08-29
打赏
举报
回复
MYSQL暂时不支持子查询中引用自己的字段。
不过有折中的方案:
mysql> select * from table_a;
+----+-----------+------+
| id | parent_id | name |
+----+-----------+------+
| 0 | -1 | - |
| 1 | 0 | a |
| 2 | 1 | b |
| 3 | 1 | c |
| 4 | 1 | d |
| 5 | 2 | e |
| 6 | 2 | f |
| 7 | 3 | g |
| 8 | 4 | h |
| 9 | 6 | i |
| 10 | 8 | j |
| 11 | 9 | k |
| 12 | 11 | l |
+----+-----------+------+
13 rows in set (0.00 sec)
mysql> create temporary table tmp select * from table_a order by id desc limit 1
0;
Query OK, 10 rows affected (0.16 sec)
Records: 10 Duplicates: 0 Warnings: 0
mysql> truncate table table_a;
Query OK, 13 rows affected (0.08 sec)
mysql> insert into table_a select * from tmp;
Query OK, 10 rows affected (0.05 sec)
Records: 10 Duplicates: 0 Warnings: 0
mysql> select * from table_a;
+----+-----------+------+
| id | parent_id | name |
+----+-----------+------+
| 3 | 1 | c |
| 4 | 1 | d |
| 5 | 2 | e |
| 6 | 2 | f |
| 7 | 3 | g |
| 8 | 4 | h |
| 9 | 6 | i |
| 10 | 8 | j |
| 11 | 9 | k |
| 12 | 11 | l |
+----+-----------+------+
10 rows in set (0.00 sec)
mysql>
mfkiqpl
2007-08-29
打赏
举报
回复
谢谢楼上两位。。但我要的是MYSQL。。MYSQL里不能用TOP
青锋-SS
2007-08-29
打赏
举报
回复
delete from onlist where id not in (select TOP 10 id from onlist order by id desc)
不过这是ms sql的写法不知道是否适合你的情况
青锋-SS
2007-08-29
打赏
举报
回复
delete from onlist where id not in (select TOP 10 id from onlist order by id desc)
SQL语句
大全(经典珍藏版)
经典的
SQL语句
大全 初学进阶
数据
库必备资源
SQL:经典语句大全
sql各种经典查询语句 以及各种
数据
库操作,表操作
面试必备:如何实现
SQL语句
删除
重复记录且只
保留
一
条
有效记录?
最近在做题库系统,由于在题库中
添加
了重复的试题,所以需要查询出重复的试题,并且
删除
掉重复的试题只
保留
其中1
条
,以保证考试的时候抽不到重复的题。首先
写
了一个小的例子:一、单个字段的操作这是
数据
库中的表:分组介绍Select重复字段From表GroupBy重复字段HavingCount(*)>1查看是否有重复的
数据
:GROUP BY <列名序列>HAVING <...
如何
写
好
SQL语句
?
如何
写
好
SQL语句
,请看看下面的建议。
SQL查询重复
数据
,
删除
重复
数据
保留
id最小的一
条
作为唯一
数据
目录 1、使用背景 2、代码实现 3、
SQL语句
实现 4、原理总结 5、参考文章 1、使用背景 因为系统前期其他人员开发过程之中,没有针对add(
添加
操作)的接口,做幂等性验证,出现相关的业务
数据
出现错误,于是需要执行一
条
语句进行
删除
,保证
数据
唯一性。 2、代码实现 重复
数据
下图所示: 3、
SQL语句
实现 DELETE FROM cos_study_group_user WHERE Id NOT IN ( SELECT Id FRO...
MySQL
56,942
社区成员
56,759
社区内容
发帖
与我相关
我的任务
MySQL
MySQL相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MySQL相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章