清空表应该怎么写? SQL

[复制链接]
查看11 | 回复4 | 2018-3-31 00:15:04 | 显示全部楼层 |阅读模式
比如我要清空表stu的所有数据。如果只要清空指定的数据,比如说第10条以后的数据,又应该怎么写呢?

回复

使用道具 举报

千问 | 2018-3-31 00:15:04 | 显示全部楼层
清空所有数据:Truncate Table stu或者Delete stu。清空第10条以后数据:Delete From Stu Where id Not In、Select Top 10 id From stu Order By id。数据库清空表使用delete和truncate语句,但这两个命令语句是有区别的:首先区别在于,delete是数据库操作语句而非命令语句,直接清空的是数据,能够触发触发器等操作。而truncate是命令语句,不会触发触发器等操作,但不能回滚。truncate语句是直接提交的数据库的,而delete是DML语句。delete还会保留数据库的高水线。打个比方,你就能知道最简单的区别。比如你的表中有一个自增长的ID,tr
回复

使用道具 举报

千问 | 2018-3-31 00:15:04 | 显示全部楼层
清空所有数据:Truncate Table stu或者Delete stu清空第10条以后数据:Delete From Stu Where id Not In(Select Top 10 id From stu Order By id)
回复

使用道具 举报

千问 | 2018-3-31 00:15:04 | 显示全部楼层
Delete from stuWhere ID Not In (Select ID Top 10 From stu)ID是唯一主键,也可以用其他的表示唯一的字段
回复

使用道具 举报

千问 | 2018-3-31 00:15:04 | 显示全部楼层
DELETE stu WHERE id IN(SELECT TOP 10 id FROM stu order by id desc)或DELETE stu WHERE id not IN(SELECT TOP 10 id FROM stu)注: id为你表中的主键
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行