ITPub博客

首页 > > > SQL基础知识普及(三)——TOP

SQL基础知识普及(三)——TOP

作者:liyue071714118 时间:2018-03-08 15:28:37 0 删除 编辑

今天我们来讲讲TOP关键字的用法~

按惯例先上SQL Server查询顺序,小括号()里面的数字代码数据库引擎在执行查询语句时候的先后顺序,从1开始:

(8)SELECT (9)DISTINCT  (11)<Top Num> <select list>
(1)FROM 
[left_table]
(3)<join_type> 
JOIN <right_table>
(2) 
       ON <join_condition>
(4)WHERE 
<where_condition>
(5)GROUP 
BY <group_by_list>
(6)WITH 
<CUBE | RollUP>
(7)HAVING 
<having_condition>
(10)ORDER 
BY <order_by_list> 


TOP 子句

TOP 子句用于规定要返回的记录的数目。

对于拥有数千条记录的大型表来说,TOP 子句是非常有用的。

注释:并非所有的数据库系统都支持 TOP 子句。

SQL Server 的语法:

SELECT TOP number|percent column_name(s)
FROM table_name

MySQL 和 Oracle 中的 SQL SELECT TOP 是等价的

MySQL 语法

SELECT column_name(s)
FROM table_name
LIMIT number

例子

SELECT *
FROM Persons
LIMIT 5

Oracle 语法

SELECT column_name(s)
FROM table_name
WHERE ROWNUM <= number

例子

SELECT *
FROM Persons
WHERE ROWNUM <= 5

原始的表 (用在例子中的):

Persons 表:

Id LastName FirstName Address City
1 Adams John Oxford Street London
2 Bush George Fifth Avenue New York
3 Carter Thomas Changan Street Beijing
4 Obama Barack Pennsylvania Avenue Washington

SQL TOP 实例

现在,我们希望从上面的 "Persons" 表中选取头两条记录。

我们可以使用下面的 SELECT 语句:

SELECT TOP 2 * FROM Persons

结果:

Id LastName FirstName Address City
1 Adams John Oxford Street London
2 Bush George Fifth Avenue New York

SQL TOP PERCENT 实例

现在,我们希望从上面的 "Persons" 表中选取 50% 的记录。

我们可以使用下面的 SELECT 语句:

SELECT TOP 50 PERCENT * FROM Persons

结果:


Id LastName FirstName Address City
1 Adams John Oxford Street London
2 Bush George Fifth Avenue New York

以上就是TOP的相关语法和用法,简而言之就是从表里面取出少量的数据进行显示,不需要加载整张表或整个查询出来的记录。



长按下面的二维码关注我们,更多学习经验/教辅资料应有尽有,觉得文章写的不错还望能分享给您的朋友,感谢您的支持~


原文作者:;如有侵权,请联系管理员删除。

请登录后发表评论 登录
全部评论

注册时间:2021-12-10

  • 博文量
    1486
  • 访问量
    11405