postgresql中limit和offset后可不可以跟表达式

ICEFISH123 2009-10-30 10:48:03
postgresql中limit和offset后可不可以跟表达式
如:
select a,b
from userinfo
order by userinfo.userid
limit select count(userinfo.userid) from userinfo offset select count(userinfo.userid)-10 from userinfo

也就是说,我想取表userinfo的后十行。但是这样写是会报错的。希望高手指教。
...全文
660 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
fighter1945 2009-11-11
  • 打赏
  • 举报
回复
8.4可以,新特性
Challenger_Ican 2009-11-07
  • 打赏
  • 举报
回复
ACMAIN_CHM(acmain) 正解!
ICEFISH123 没成功,可能问题还出在你的SQL语句中……
ACMAIN_CHM 2009-11-01
  • 打赏
  • 举报
回复
可以。 测试如下:


csdn=# select *
csdn-# from t_shanhengshu
csdn-# order by id
csdn-# limit (select min(id) from t_shanhengshu)+4;
id | severity
----+----------
1 | 0
2 | 0
3 | 0
4 | 0
5 | 0
(5 rows)


csdn=#
nianzhang747 2009-11-01
  • 打赏
  • 举报
回复
是不能的
vinsonshen 2009-10-30
  • 打赏
  • 举报
回复
postgresql中limit和offset后可不可以跟表达式
----------------------
不能



也就是说,我想取表userinfo的后十行。
-------------------
可以根据userid倒序然后取前面10行就可以了
select a,b
from userinfo
order by userinfo.userid desc limit 10
ACMAIN_CHM 2009-10-30
  • 打赏
  • 举报
回复
postgresql 中 limit 后只能跟常数。目前版本尚未有这种支持。
WWWWA 2009-10-30
  • 打赏
  • 举报
回复
不能,一般是用字符串累计生成SQL语句,再动态执行

956

社区成员

发帖
与我相关
我的任务
社区描述
PostgreSQL相关内容讨论
sql数据库数据库架构 技术论坛(原bbs)
社区管理员
  • PostgreSQL社区
  • yang_z_1
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧