diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2020-03-23 12:42:15 -0400 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2020-03-23 12:42:15 -0400 |
commit | 25bf317ccd5aa6050f1f0ac6aa5ed48cb5c6e98c (patch) | |
tree | b5876eb9840e4e8a35d2c7fe0921705a4d92b120 | |
parent | aae7e8530dac411fe4d9021e2392917458b37f8d (diff) | |
download | postgresql-25bf317ccd5aa6050f1f0ac6aa5ed48cb5c6e98c.tar.gz postgresql-25bf317ccd5aa6050f1f0ac6aa5ed48cb5c6e98c.zip |
Doc: explain that LIKE et al can be used in ANY (sub-select) etc.
This wasn't stated anywhere, and it's perhaps not that obvious,
since we get questions about it from time to time. Also undocumented
was that the parser actually translates these into operators.
Discussion: https://postgr.es/m/CAFj8pRBkvZ71BqGKZnBBG4=0cKG+s50Dy+DYmrizUKEpAtdc+w@mail.gmail.com
-rw-r--r-- | doc/src/sgml/func.sgml | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/doc/src/sgml/func.sgml b/doc/src/sgml/func.sgml index 652580a8042..2e89982abde 100644 --- a/doc/src/sgml/func.sgml +++ b/doc/src/sgml/func.sgml @@ -4046,7 +4046,23 @@ cast(-44 as bit(12)) <lineannotation>111111010100</lineannotation> <literal>!~~</literal> and <literal>!~~*</literal> operators that represent <function>NOT LIKE</function> and <function>NOT ILIKE</function>, respectively. All of these operators are - <productname>PostgreSQL</productname>-specific. + <productname>PostgreSQL</productname>-specific. You may see these + operator names in <command>EXPLAIN</command> output and similar + places, since the parser actually translates <function>LIKE</function> + et al. to these operators. + </para> + + <para> + The phrases <function>LIKE</function>, <function>ILIKE</function>, + <function>NOT LIKE</function>, and <function>NOT ILIKE</function> are + generally treated as operators + in <productname>PostgreSQL</productname> syntax; for example they can + be used in <replaceable>expression</replaceable> + <replaceable>operator</replaceable> ANY + (<replaceable>subquery</replaceable>) constructs, although + an <literal>ESCAPE</literal> clause cannot be included there. In some + obscure cases it may be necessary to use the underlying operator names + instead. </para> <para> |