1
0
mirror of https://github.com/postgres/postgres.git synced 2025-04-25 21:42:33 +03:00

Add mention of FOR UPDATE and LIMIT/OFFSET>

This commit is contained in:
Bruce Momjian 1999-06-03 19:52:09 +00:00
parent e1ea7cc2e5
commit a4a5f56202
3 changed files with 27 additions and 4 deletions

View File

@ -26,6 +26,8 @@ SELECT [ALL|DISTINCT [ON <replaceable class="PARAMETER">column</replaceable>] ]
[ HAVING <replaceable class="PARAMETER">condition</replaceable> [, ...] ] [ HAVING <replaceable class="PARAMETER">condition</replaceable> [, ...] ]
[ { UNION [ALL] | INTERSECT | EXCEPT } <replaceable class="PARAMETER">select</replaceable> ] [ { UNION [ALL] | INTERSECT | EXCEPT } <replaceable class="PARAMETER">select</replaceable> ]
[ ORDER BY <replaceable class="PARAMETER">column</replaceable> [ ASC | DESC ] [, ...] ] [ ORDER BY <replaceable class="PARAMETER">column</replaceable> [ ASC | DESC ] [, ...] ]
[ FOR UPDATE [OF class_name...]]
[ LIMIT count [OFFSET|, count]]
</synopsis> </synopsis>
<refsect2 id="R2-SQL-SELECT-1"> <refsect2 id="R2-SQL-SELECT-1">
@ -242,6 +244,15 @@ including duplicates.</para>
The EXCEPT give you the rows in the upper query not in the lower query. The EXCEPT give you the rows in the upper query not in the lower query.
(See EXCEPT clause).</para> (See EXCEPT clause).</para>
<para>
The FOR UPDATE clause allows the SELECT statement to perform
exclusive locking of selected rows.
(See EXCEPT clause).</para>
<para>
The LIMIT...OFFSET clause allows control over which rows are
returned by the query.</para>
<para> <para>
You must have SELECT privilege to a table to read its values You must have SELECT privilege to a table to read its values
(See <command>GRANT</command>/<command>REVOKE</command> statements). (See <command>GRANT</command>/<command>REVOKE</command> statements).
@ -709,6 +720,8 @@ SELECT [ ALL | DISTINCT ] <replaceable class="PARAMETER">expression</replaceable
[ HAVING <replaceable class="PARAMETER">condition</replaceable> [, ...] ] [ HAVING <replaceable class="PARAMETER">condition</replaceable> [, ...] ]
[ { UNION [ALL] | INTERSECT | EXCEPT } <replaceable class="PARAMETER">select</replaceable>] [ { UNION [ALL] | INTERSECT | EXCEPT } <replaceable class="PARAMETER">select</replaceable>]
[ ORDER BY <replaceable class="PARAMETER">column</replaceable> [ ASC | DESC ] [, ...] ] [ ORDER BY <replaceable class="PARAMETER">column</replaceable> [ ASC | DESC ] [, ...] ]
[ FOR UPDATE [OF class_name...]]
[ LIMIT count [OFFSET|, count]]
</synopsis> </synopsis>
<refsect2 id="R2-SQL-SELECTINTO-1"> <refsect2 id="R2-SQL-SELECTINTO-1">

View File

@ -5,7 +5,7 @@
* *
* Copyright (c) 1994, Regents of the University of California * Copyright (c) 1994, Regents of the University of California
* *
* $Id: psqlHelp.h,v 1.67 1999/06/03 19:17:59 momjian Exp $ * $Id: psqlHelp.h,v 1.68 1999/06/03 19:52:08 momjian Exp $
* *
*------------------------------------------------------------------------- *-------------------------------------------------------------------------
*/ */
@ -317,8 +317,10 @@ TIMEZONE|XACTISOLEVEL|CLIENT_ENCODING|SERVER_ENCODING"},
\t[WHERE qual]\n\ \t[WHERE qual]\n\
\t[GROUP BY group_list]\n\ \t[GROUP BY group_list]\n\
\t[HAVING having_clause]\n\ \t[HAVING having_clause]\n\
\t[ { UNION [ALL] | INTERSECT | EXCEPT } SELECT ...]\n\
\t[ORDER BY attr1 [ASC|DESC] [USING op1], ...attrN ]\n\ \t[ORDER BY attr1 [ASC|DESC] [USING op1], ...attrN ]\n\
\t[ { UNION [ALL] | INTERSECT | EXCEPT } SELECT ...];"}, \t[FOR UPDATE [OF class_name...]]\n\
\t[LIMIT count [OFFSET|, count]];"},
{"set", {"set",
"set run-time environment", "set run-time environment",
"\ "\

View File

@ -1,6 +1,6 @@
.\" This is -*-nroff-*- .\" This is -*-nroff-*-
.\" XXX standard disclaimer belongs here.... .\" XXX standard disclaimer belongs here....
.\" $Header: /cvsroot/pgsql/src/man/Attic/select.l,v 1.12 1999/03/19 02:41:41 momjian Exp $ .\" $Header: /cvsroot/pgsql/src/man/Attic/select.l,v 1.13 1999/06/03 19:52:09 momjian Exp $
.TH SELECT SQL 11/05/95 PostgreSQL PostgreSQL .TH SELECT SQL 11/05/95 PostgreSQL PostgreSQL
.SH NAME .SH NAME
select - retrieve instances from a class select - retrieve instances from a class
@ -14,8 +14,10 @@ select - retrieve instances from a class
[\fBwhere\fR where-clause] [\fBwhere\fR where-clause]
[\fBgroup by\fR attr_name1 {, attr_name-i....}] [\fBgroup by\fR attr_name1 {, attr_name-i....}]
[\fBhaving\fR having-clause] [\fBhaving\fR having-clause]
[\fBorder by\fR attr_name1 [\fBasc\fR | \fBdesc\fR] [\fBusing op1\fR] {, attr_namei...}]
[ { \fBunion {all}\fR | \fBintersect\fR | \fBexcept\fR } \fBselect\fR ...] [ { \fBunion {all}\fR | \fBintersect\fR | \fBexcept\fR } \fBselect\fR ...]
[\fBorder by\fR attr_name1 [\fBasc\fR | \fBdesc\fR] [\fBusing op1\fR] {, attr_namei...}]
[\fBfor update\fR [\fBof\fR class_name...]]
[\fBlimit\fR count [\fBoffset\fR|, count]]
.fi .fi
.SH DESCRIPTION .SH DESCRIPTION
@ -37,6 +39,12 @@ clause allows a user to specify that he wishes the instances sorted
according to the corresponding operator. This operator must be a according to the corresponding operator. This operator must be a
binary one returning a boolean. Multiple sort fields are allowed and binary one returning a boolean. Multiple sort fields are allowed and
are applied from left to right. are applied from left to right.
The
.BR "for update"
allows the select statement to perform exclusive locking of selected rows.
The
.BR "limit/offset"
allows control over which rows are returned by the query.
.PP .PP
The target list specifies the fields to be retrieved. Each The target list specifies the fields to be retrieved. Each
.IR attr_name .IR attr_name