精通MS-ACCESS SQL之基础篇(10)
时 间:2017-11-30 11:22:12
作 者:Big Young ID:252 城市:襄阳
摘 要: TOP-N查询的用法。
正 文:
第十节 利用TOP-N查询对记录进行筛选
在实际工作中,我们经常会遇到诸如查询最热门的10篇文章、业绩最好的20名员工、收入最高30人或企事业世界500强等诸如此类返回满足条件的n条记录的情况,在SQL语言中,可以使用TOP关键字来实现。
一、TOP-N查询的基本语法
Select TOP number [PERCENT] column_name(s)
FROM table_name
Where condition;
这里“number”是一个正整数,代表将要提取的记录的行数;“column(s)”是字段列表,就是查询要显示的列名;“table_name”是被操作的表的名字;“condition”对记录进行筛选的条件。
TOP关键字在SQL语言中用来限制返回结果集中的记录条数,而PERCENT关键字用来限制返回结果在记录集中所占百分比数相当的记录条数。其使用方法下面我们来详细的介绍:
二、返回确定数目的记录个数
语法格式:Select TOP n <字段列表> FROM <表名> [筛选条件]
其中,n为要返回结果集中的记录条数。
下面以实例来说明其用法,如在考试管理数据库中,我们有一张名为“考试成绩”的表,记录的是考生的考试成绩数据,像如下图10-1所示:
图10-1:学生考试成绩表
现在我们想要找出成绩最高的10考生,我们可以使用如下的SQL查询:
Select TOP 10 考生号, 姓名, 语文, 数学, 英语, 综合, (语文+数学+英语+综合) AS 总分 FROM 考试成绩 ORDER BY (语文+数学+英语+综合) DESC;
如图10-2所示:
图10-2:查询总分最高的前10名考生信息
执行此查询,我们想根的考试成绩最好的前10名考生就展现在我们面前,结果如图10-3所示:
图10-3:查询出的总分最高的前10名考生
三、返回结果集中指定百分比的记录数
有时候,我们想了解在整个集体中前百分之几的个体的情况,我们就会用到TOP-N PERCENT格式的查询语句,其语法格式:
Select TOP n PERCENT <字段列表> FROM <表名> [查询条件];
其中,n为所返回的记录数所占结果集中记录数目的百分比数。下面以实例来说明:
我们还是使用前面的“考试成绩”表来说明问题,现在我们想要了解总分靠前的15%的考生的情况,我们可以利用这样的SQL查询语句:
Select TOP 15 PERCENT 考生号, 姓名, 语文, 数学, 英语, 综合, (语文+数学+英语+综合) AS 总分 FROM 考试成绩 ORDER BY (语文+数学+英语+综合) DESC;
如图10-4所示:
图10-4:提取总分靠准的15%的考生信息的查询
运行该查询,就可以了解到总分最靠前的15%的考生的信息,如图10-5所示:
图10-5:总分最靠前的15%的考生的查询结果
在具体使用过程中,可以结合条件子句(筛选记录)和排序子句(如何进行排序)等实现较为丰富的功能,这里就不一一说明了,大家可以自行探索。
Access软件网官方交流QQ群 (群号:54525238) Access源码网店
常见问答:
技术分类:
源码示例
- 【源码QQ群号19834647...(12.17)
- 统计当月之前(不含当月)的记录...(03.11)
- 【Access Inputbo...(03.03)
- 按回车键后光标移动到下一条记录...(02.12)
- 【Access Dsum示例】...(02.07)
- Access对子窗体的数据进行...(02.05)
- 【Access高效办公】上月累...(01.09)
- 【Access高效办公】上月累...(01.06)
- 【Access Inputbo...(12.23)
- 【Access Dsum示例】...(12.16)

学习心得
最新文章
- 32位的Access软件转化为64...(04.12)
- 【Access高效办公】如何让vb...(04.11)
- 仓库管理实战课程(10)-入库功能...(04.08)
- Access快速开发平台--Fun...(04.07)
- 仓库管理实战课程(9)-开发往来单...(04.02)
- 仓库管理实战课程(8)-商品信息功...(04.01)
- 仓库管理实战课程(7)-链接表(03.31)
- 仓库管理实战课程(6)-创建查询(03.29)
- 仓库管理实战课程(5)-字段属性(03.27)
- 设备装配出入库管理系统;基于Acc...(03.24)