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

今天我们来讲讲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)GROUPBY <group_by_list>
(6)WITH<CUBE | RollUP>
(7)HAVING<having_condition>
(10)ORDERBY <order_by_list>
TOP 子句用于规定要返回的记录的数目。
对于拥有数千条记录的大型表来说,TOP 子句是非常有用的。
注释:并非所有的数据库系统都支持 TOP 子句。
SELECT TOP number|percent column_name(s)
FROM table_name
SELECT column_name(s)
FROM table_name
LIMIT number
SELECT *
FROM Persons
LIMIT 5
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 |
现在,我们希望从上面的 "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 |
现在,我们希望从上面的 "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的相关语法和用法,简而言之就是从表里面取出少量的数据进行显示,不需要加载整张表或整个查询出来的记录。
长按下面的二维码关注我们,更多学习经验/教辅资料应有尽有,觉得文章写的不错还望能分享给您的朋友,感谢您的支持~



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