Re: Creating an index on a timestamp with time zone cast to a date-- possible?

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: Creating an index on a timestamp with time zone cast to a date-- possible?
Дата
Msg-id 1012707.1621880687@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Creating an index on a timestamp with time zone cast to a date-- possible?  (Wells Oliver <wells.oliver@gmail.com>)
Список pgsql-admin
Wells Oliver <wells.oliver@gmail.com> writes:
> Seems you can't do this:
> create index on someschema.sometable ((modified_at::date));
> If modified_at is a timestamp with a time zone:
> ERROR:  functions in index expression must be marked IMMUTABLE
> But you can if it's a timestamp without a time zone. Anyway, any way of
> casting that as to use it as an index?

The problem is that casting a timestamptz to a date (or a timestamp
for that matter) depends on your current timezone setting.

You could do something like

create index on sometable (((modified_at at time zone 'UTC')::date));

            regards, tom lane



В списке pgsql-admin по дате отправления:

Предыдущее
От: Wells Oliver
Дата:
Сообщение: Creating an index on a timestamp with time zone cast to a date-- possible?
Следующее
От: Yambu
Дата:
Сообщение: bloat indicator using n_dead_tup column