一般协议书怎么写:数据库查询和删除的命令怎么写

来源:百度文库 编辑:高校问答 时间:2024/05/07 06:52:21
我想对SQL的A数据库的B表进行查询有多少行,如果多余100行,就把多余的删除掉,在查询分析器里,应该怎么写SQL语句?
现在不需要SQL的知识,谢谢
表里没有设置主键怎么办啊?

B表的主键比如是ID,那这样写SQL语句:

USE A
DELETE FROM B WHERE ID NOT IN (SELECT TOP 100 ID FROM B ORDER BY ID DESC)

这条语句是删除最新的100条之外的数据.

常用SQL查询命令的语法

本文假定读者已经对数据库连接技术有所了解,因此只讨论有关SQL查询命令的语法。
表结构如下(MS Access 2000):
表名:userTable
----------------------
字段名 字段类型
----------------------
userID 自动计数(长整型)
userName 文本
userSex 文本
CreateDate 日期/时间(默认值为Now())
----------------------
一、用Select命令提取记录
1、取得表中所有记录
Select命令,语句如下:
"Select *From userTable"
2、取得表中userID字段记录
"Select userID From userTable"
3、取得表中userID、userSex字段记录
"Select userID, userSex From userTable"
4、取得表中userSex值为“男”的记录
"Select From userTable Where userSex = ''男''"
5、取得表中userName值中包含“张”字的记录
"Select From userTable Where userName Like ''%男%''"
6、取得表中所有记录,按CreateDate字段值降序排列
"Select From userTable Order By CreateDate DESC"
说明:
1)、以上命令可以组合使用,如,取得表中userName中包含“浩”字的,userID的值,并按CreateDate值的时间降序排列,那么命令如下:
"Select userID From userTable Where userName Like ''%浩%'' Order By CreateDate DESC"
2)、使用中应注意,如果字段类型为文本,则在条件判别时,应在条件字外加上单引号,此规则适用于任何一个SQL查询命令。
3)、条件字中的“%”为通配符。
4)、当判别条件多于一条时,应以“And”或“Or”连接。

Delete删除记录删除语法
1、删除全部记录
"Delete From userTable"
2、删除特定条件的记录,如删除userID为“20”的记录
"Delete From userTable Where userID=20"
3、删除组合条件记录,如删除userSex为“女”,userName中包含“张”的记录
"Delete From userTable Where userSex=''女'' And userName Like ''%张%''"

应该先打开数据库 A
然后 SELECT * FROM B

删除 DELETE FROM B WHERE 你的条件

你的表里面有KEY吗?
用一句SQL就行了:

delete from b where (key字段) in (select top 100 (key字段) from b)

别和我说你不知道什么是KEY字段

没有KEY就加上KEY吧,或者找几个字段组合不会重复的字段,然后用上面的方法也行。

select *from A

(1)查询
SELECT[ALL|DISTINCT]<目标列表达式>[,<目标列表达式>]...........
FROM<表明或视图名>[,<表明或视图名>]....
[WHERE<条件表达式>]
[GROUP BY <列名1>[HAVING <条件表达式>]]
[ORDER BY <列名2>[ASC|DESC]];
(2)删除
DELETE
FROM <表名>
[WHERE<条件>];