Re: Analysis Function

Поиск
Список
Период
Сортировка
От David Jarvis
Тема Re: Analysis Function
Дата
Msg-id AANLkTik3l6uedzVJLqn-nueNva46NAFwxbpSe1XSc26_@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Analysis Function  (Tim Landscheidt <tim@tim-landscheidt.de>)
Список pgsql-performance
Hi, Tim.

Have you tested DATE_TRUNC()?

Not really; it returns a full timestamp and I would still have to concatenate strings. My goal is to speed up the following code (where p_ parameters are user inputs):

        date(extract(YEAR FROM m.taken)||''-'||p_month1||'-'||p_day1||''') d1,
        date(extract(YEAR FROM m.taken)||''-'||p_month2||'-'||p_day2||''') d2


Using DATE_TRUNC() won't help here, as far as I can tell. Removing the concatenation will halve the query's time. Such as:

dateserial( m.taken, p_month1, p_day1 ) d1,
dateserial( m.taken, p_month2, p_day2 ) d2

My testing so far has shown a modest improvement by using a C function (to avoid concatenation).

Dave

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

Предыдущее
От: Tim Landscheidt
Дата:
Сообщение: Re: Analysis Function
Следующее
От: Heikki Linnakangas
Дата:
Сообщение: Re: Analysis Function