From 15a5006aac1432da35ff6a7ae27a018ed300e860 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Thu, 1 Dec 2011 16:38:59 -0500 Subject: [PATCH] Clarify documentation about SQL:2008 variant of LIMIT/OFFSET syntax. The point that you need parentheses for non-constant expressions apparently needs to be brought out a bit more clearly, per bug #6315. --- doc/src/sgml/ref/select.sgml | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/doc/src/sgml/ref/select.sgml b/doc/src/sgml/ref/select.sgml index cc8cd48583a..39fc6b6d830 100644 --- a/doc/src/sgml/ref/select.sgml +++ b/doc/src/sgml/ref/select.sgml @@ -1064,7 +1064,8 @@ SELECT name FROM distributors ORDER BY code; LIMIT { count | ALL } OFFSET start -count specifies the + + count specifies the maximum number of rows to return, while start specifies the number of rows to skip before starting to return rows. When both are specified, @@ -1087,17 +1088,19 @@ OFFSET start OFFSET start { ROW | ROWS } FETCH { FIRST | NEXT } [ count ] { ROW | ROWS } ONLY - According to the standard, the OFFSET clause must come - before the FETCH clause if both are present; but - PostgreSQL is laxer and allows either order. + In this syntax, to write anything except a simple integer constant for + start or count, you must write parentheses + around it. + If count is + omitted in a FETCH clause, it defaults to 1. ROW and ROWS as well as FIRST and NEXT are noise words that don't influence - the effects of these clauses. In this syntax, when using expressions - other than simple constants for start - or count, parentheses will be - necessary in most cases. If count is - omitted in FETCH, it defaults to 1. + the effects of these clauses. + According to the standard, the OFFSET clause must come + before the FETCH clause if both are present; but + PostgreSQL is laxer and allows either order. -- 2.39.5