Обсуждение: [DOCS] case-insensitive index lower()

Поиск
Список
Период
Сортировка

[DOCS] case-insensitive index lower()

От
loren.szendre@gmail.com
Дата:
The following documentation comment has been logged on the website:

Page: https://www.postgresql.org/docs/9.1/static/sql-createindex.html
Description:

In the section on indexes the documentation accurately describes how to
create an efficient, case-insensitive index using lower(field_name). But! in
Firebird to get a query to utilize such index, you must write the query as
such:

WHERE myfield = lower(:myfield)

Otherwise a table scan is performed. The documentation should state whether
or not such a thing is required. It's one thing to create an index, it's
quite another to know how to write a statement that guarantees that the
index will be used.

Re: [DOCS] case-insensitive index lower()

От
Bruce Momjian
Дата:
On Tue, Dec 20, 2016 at 10:02:42AM +0000, loren.szendre@gmail.com wrote:
> The following documentation comment has been logged on the website:
>
> Page: https://www.postgresql.org/docs/9.1/static/sql-createindex.html
> Description:
>
> In the section on indexes the documentation accurately describes how to
> create an efficient, case-insensitive index using lower(field_name). But! in
> Firebird to get a query to utilize such index, you must write the query as
> such:
>
> WHERE myfield = lower(:myfield)
>
> Otherwise a table scan is performed. The documentation should state whether
> or not such a thing is required. It's one thing to create an index, it's
> quite another to know how to write a statement that guarantees that the
> index will be used.

I don't see that as useful for the majority of people reading the
documentation.  EXPLAIN will clearly show the index being used.

--
  Bruce Momjian  <bruce@momjian.us>        http://momjian.us
  EnterpriseDB                             http://enterprisedb.com

+ As you are, so once was I.  As I am, so you will be. +
+                      Ancient Roman grave inscription +