ITPub博客

首页 > 数据库 > > Gauss 100 数据查询之LIMIT子句

Gauss 100 数据查询之LIMIT子句

作者:GaussDB_数据库 时间:2020-03-03 15:32:22 0 删除 编辑

LIMIT子句允许限制查询返回的行。 可以指定偏移量,以及要返回的行数或行百分比。 可以使用此子句实现top-N报表。要获得一致的结果,请指定ORDER BY子句以确保确定性排序顺序。

语法格式

[ LIMIT [ start, ] count | LIMIT count OFFSET start | OFFSET start[ LIMIT count ] ]

使用方法

  • start:指定在返回行之前要跳过的行数。

  • count:指定要返回的最大行数。

start和count都被指定时,在开始计算要返回的count行之前会跳过start行。例如下方示例1。

start在count之后指定时,可以通过OFFSET关键字实现。例如下方示例2。也就是说LIMIT 5,20与LIMIT 20 OFFSET 5及OFFSET 5 LIMIT 20等效。

示例

先不使用LIMIT子句进行查询,以与后面增加LIMIT子句后的查询结果对比。

SELECT staff_id, last_name 
FROM staffs
ORDER BY staff_id;
STAFF_ID LAST_NAME
---------------------------------------- -------------------------
100 King
101 Kochhar
102 De Haan
103 Hunold
104 Ernst
105 Austin
106 Pataballa
107 Lorentz
108 Greenberg
109 Faviet
110 Chen
...
107 rows fetched.

示例1:在上述示例的基础上,通过增加LIMIT 5,20限定查询时跳过5行后,查询总共20行数据。

从查询结果看出,较上面的查询结果,查询跳过了staff_id为100~104的5条记录,从105开始总共返回了20行记录。

SELECT staff_id, last_name 
FROM staffs
ORDER BY staff_id
LIMIT 5,20;
STAFF_ID LAST_NAME
---------------------------------------- -------------------------
105 Austin
106 Pataballa
107 Lorentz
108 Greenberg
109 Faviet
110 Chen
111 Sciarra
112 Urman
113 Popp
114 Raphaely
115 Khoo
116 Baida
117 Tobias
118 Himuro
119 Colmenares
120 Weiss
121 Fripp
122 Kaufling
123 Vollman
124 Mourgos20 rows fetched.

示例2:下面的语句与示例1的语句等效。

SELECT staff_id, last_name
FROM staffs
ORDER BY staff_idLIMIT 20 OFFSET 5;


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69959250/viewspace-3142474/ ,如需转载,请注明出处,否则将追究法律责任。

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

注册时间:2020-01-06

  • 博文量
    2907
  • 访问量
    19245