OFFSET 和 LIMIT 在 POSTGRES 中不起作用

OFFSET and LIMIT are not working MAX in POSTGRES

PGADMIN 中的 Follow 查询 没有给我任何信息,

SELECT MAX(time) AS MaxID 
FROM table_name 
where column_name like 'valu_name' 
OFFSET 1000 Limit 1000

好像我 运行 下面的查询它 给我输出

SELECT MAX(time) AS MaxID 
FROM table_name 
where column_name like 'valu_name'

但是为什么呢?为什么 MAX 函数不适用于 OFFSETLIMIT

正确的做法是什么?

用例是获取 2000 到 3000 之间行的最大时间戳,这就是为什么我使用 OFFSET 和 LIMIT,从到到行可能会改变!!

OFFSETLIMIT 是在您获得 MAX(time) 的结果后应用的,它只有 1 行。

如果你想获得最大 time 的 1000 行,从你的 table 中任意返回,因为没有 ORDER BY 子句,你应该使用一个子查询 returns 这些行然后聚合:

SELECT MAX(time) AS MaxID 
FROM (
  SELECT time
  FROM table_name 
  WHERE column_name like 'valu_name' 
  OFFSET 1000 Limit 1000
) t