|
1 | 1 | <!--
|
2 |
| -$PostgreSQL: pgsql/doc/src/sgml/ref/select.sgml,v 1.83 2005/04/08 00:59:58 neilc Exp $ |
| 2 | +$PostgreSQL: pgsql/doc/src/sgml/ref/select.sgml,v 1.84 2005/04/22 04:20:44 momjian Exp $ |
3 | 3 | PostgreSQL documentation
|
4 | 4 | -->
|
5 | 5 |
|
@@ -830,11 +830,13 @@ FOR UPDATE [ OF <replaceable class="parameter">table_name</replaceable> [, ...]
|
830 | 830 | </para>
|
831 | 831 |
|
832 | 832 | <para>
|
833 |
| - <literal>FOR UPDATE</literal> may appear before |
834 |
| - <literal>LIMIT</literal> for compatibility with |
835 |
| - <productname>PostgreSQL</productname> versions before 7.3. It |
836 |
| - effectively executes after <literal>LIMIT</literal>, however, and |
837 |
| - so that is the recommended place to write it. |
| 833 | + It is possible for a <command>SELECT</> command using both |
| 834 | + <literal>LIMIT</literal> and <literal>FOR UPDATE</literal> |
| 835 | + clauses to return fewer rows than specified by <literal>LIMIT</literal>. |
| 836 | + This is because <literal>LIMIT</> selects a number of rows, |
| 837 | + but might then block requesting a <literal>FOR UPDATE</literal> lock. |
| 838 | + Once the <literal>SELECT</> unblocks, the query qualifiation might not |
| 839 | + be met and the row not be returned by <literal>SELECT</>. |
838 | 840 | </para>
|
839 | 841 | </refsect2>
|
840 | 842 | </refsect1>
|
|