【postgresql】在postgresql中使用limit实现select top x

附一篇oracle实现 top x

在psql中使用 \h select 命令,可以得到以下帮助

jincheng=# \h select
命令:       SELECT
描述:       从资料表或视观表读取资料
语法:
[ WITH [ RECURSIVE ] with查询语句(with_query) [, ...] ]
SELECT [ ALL | DISTINCT [ ON ( 表达式 [, ...] ) ] ]
    * | 表达式 [ [ AS ] 输出名称 ] [, ...]
    [ FROM from列表中项 [, ...] ]
    [ WHERE 条件 ]
    [ GROUP BY 表达式 [, ...] ]
    [ HAVING 条件 [, ...] ]
    [ WINDOW 窗口名称 AS ( 窗口定义 ) [, ...] ]
    [ { UNION | INTERSECT | EXCEPT } [ ALL | DISTINCT ] 查询 ]
    [ ORDER BY 表达式 [ ASC | DESC | USING 运算子 ] [ NULLS { FIRST | LAST } ] [
, ...] ]
    [ LIMIT { 查询所用返回记录的最大数量 | ALL } ]
    [ OFFSET 起始值 [ ROW | ROWS ] ]
    [ FETCH { FIRST | NEXT } [ 查询所用返回记录的最大数量 ] { ROW | ROWS } ONLY
]
    [ FOR { UPDATE | SHARE } [ OF 表名 [, ...] ] [ NOWAIT ] [...] ]

from 列表中的项可以是下列内容之一

    [ ONLY ] 表名 [ * ] [ [ AS ] 化名 [ ( 列的化名 [, ...] ) ] ]
    ( 查询 ) [ AS ] 化名 [ ( 列的化名 [, ...] ) ]
-- More  --
根据帮助有写法

SELECT * FROM TABLENAME LIMIT 5 OFFSET 1;
此语句的意思是忽略tablename 中的第一条数据,从第二条开始取最多5条数据(包括第二条数据)。

这条语句等价于mysql中的

SELECT * FROM TABLENAME LIMIT 1,5;
一般来说limit,offset应该配合order by使用╮(╯_╰)╭


  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值