Re: Quick Date/Time Index Question
От | Tim Landscheidt |
---|---|
Тема | Re: Quick Date/Time Index Question |
Дата | |
Msg-id | m3obyc8bet.fsf@passepartout.tim-landscheidt.de обсуждение исходный текст |
Ответ на | Quick Date/Time Index Question ("David Johnston" <polobo@yahoo.com>) |
Список | pgsql-general |
"David Johnston" <polobo@yahoo.com> wrote: > I have a database field that stores a timestamp to second+ precision; > however, I want to search against it only to day precision. If I leave the > field in second precision and try to "WHERE field BETWEEN date0 AND date0" I > get no results (OK, fine) but then I cast the field to date "WHERE > field::date BETWEEN date0 AND date0" and get the expected results. So now I > want to index "field::date" by I cannot create a functional index on > "field::date" OR "CAST(field AS date)" OR "date_trunc('day',field)" due to > either syntax (::) or non-IMMUTABLE function errors (cast; date_trunc). > Is there some other way to create an index on only the "date" portion of the > field? Is it even necessary since any index ordered on timestamp is also, > by definition, order on date as well? Not necessarily a direct answer, but have you tried querying "WHERE field >= date0 AND field < (date0 + 1)"? Tim
В списке pgsql-general по дате отправления: