-
+
Indexes
The optimizer can also use a B-tree index for queries involving the
- pattern matching operators LIKE>,
- ILIKE, ~, and
- ~*, if the pattern is a constant
- and is anchored to the beginning of the string — for example,
- col LIKE 'foo%' or col ~ '^foo',
- but not col LIKE '%bar'. However, if your server does
- not use the C locale you will need to create the index with a
- special operator class to support indexing of pattern-matching queries.
- See below.
+ pattern matching operators LIKE> and ~
+ if the pattern is a constant and is anchored to
+ the beginning of the string — for example, col LIKE
+ 'foo%' or col ~ '^foo', but not
+ col LIKE '%bar'. However, if your server does not
+ use the C locale you will need to create the index with a special
+ operator class to support indexing of pattern-matching queries. See
+ below. It is also possible to use
+ B-tree indexes for ILIKE and
+ ~*, but only if the pattern starts with
+ non-alphabetic characters, i.e. characters that are not affected by
+ upper/lower case conversion.
+