rgIndex: doc/src/FAQ/FAQ.html =================================================================== RCS file: /projects/cvsroot/pgsql/doc/src/FAQ/FAQ.html,v retrieving revision 1.421 diff -u -w -r1.421 FAQ.html --- doc/src/FAQ/FAQ.html 1 Jan 2009 17:23:33 -0000 1.421 +++ doc/src/FAQ/FAQ.html 8 Jan 2009 18:02:52 -0000 @@ -815,8 +815,10 @@
  • The search string can not start with a character class, e.g. [a-e].
  • Case-insensitive searches such as ILIKE and - ~* do not utilize indexes. Instead, use expression - indexes, which are described in section 4.8.
  • + ~* do not utilize indexes on core PostgreSQL string types. Instead, + use the contrib/citext case-insensitive text type or expression + indexes, which are described in section + 4.8.
  • The default C locale must be used during initdb because it is not possible to know the next-greatest character in a non-C locale. You can create a special @@ -840,8 +842,14 @@ case-insensitive variant of LIKE is called ILIKE.

    -

    Case-insensitive equality comparisons are normally expressed - as:

    +

    The simplest way to ensure transparent case-insensitive comparisons of + values is to tse the contrib/citext case-insensitive data type, + which ensures that all comparisons are case-insensitive. It also + allows you to easily create case-insentitive UNIQUE primary + key constraints.

    + +

    If contrib/citext isn't an option, Case-insensitive equality + comparisons are normally expressed as:

         SELECT *
         FROM tab