From: Roberto Garcia <roberto.garcia@cptec.inpe.br>
To: Achilleas Mantzios <achill@matrix.gatewaynet.com>
Cc: pgsql-admin@postgresql.org
Subject: Re: Major upgrade advice
Date: Fri, 20 Jun 2008 10:26:19 -0300
Message-ID: <485BAFFB.80300@cptec.inpe.br> (raw)
In-Reply-To: <200806201005.09702.achill@matrix.gatewaynet.com>
References: <48594429.7040001@pinpointresearch.com>
<!&!AAAAAAAAAAAYAAAAAAAAAN6d+lQFliBLjc3jO6z0BSQigQAAEAAAANXsptp1/mNJkA+ZsX3eKygBAAAAAA==@tcscs.com>
<485AABC9.3020807@cptec.inpe.br>
<200806201005.09702.achill@matrix.gatewaynet.com>
We have an index on the time_stamp column, if the format of argument is
different from the format the index was created it is not used, then
performance is decreased because a sequential scan is done instead of an
index scan.
Achilleas Mantzios wrote:
> Why not simply,
> SELECT * FROM xxx WHERE <timestamp_column>::date = '2008-05-20'::date;
>
> Στις Thursday 19 June 2008 21:56:09 ο/η Roberto Garcia έγραψε:
>
>> We changed it because 8.3 doesn't allow the operator LIKE on timestamp
>> columns. Your syntax works fine but we weren't used to use as u do.
>> There weren't any specific reason, only another way to do that.
>>
>> I think when we read that operator LIKE and timestamp values were
>> incompatible we assumed that timestamp values couldn't be compared to
>> any char value, opposed as your syntax is.
>>
>> We've tried to do "select * from X where <timestamp column> =
>> '2008-05-20 10:'", expecting that the result would be any minute from 10
>> o'clock (10:15, 10:30, 10:45, etc) of the specific date, but this syntax
>> retrieves only 10:00 from that date.
>>
>> Tks for the new syntax.
>>
>> Regards
>> Roberto Garcia
>>
>> Gregory S. Youngblood wrote:
>>
>>> That's a pretty substantial change. Why did you have to make this change?
>>> Was it causing syntax errors or to get better performance on those types of
>>> queries? Actually, now that I think about it, didn't:
>>> select * from X where <timestamp column> between '2008-05-20 00:00:00' and
>>> '2008-05-20 23:59:59'
>>> work? I could have sworn I have used that syntax in 8.2 without having to
>>> arbitrarily cast the arguments... now I'm going to have to go look. :)
>>>
>>> Yup, confirmed, 8.2.7 and no casting on the date arguments when I was using
>>> between.
>>>
>>> I'm just curious if there was a specific reason (i.e. better performance,
>>> better use of indexes, etc.) for your syntax.
>>>
>>> Thanks,
>>> Greg
>>>
>>> -----Original Message-----
>>> From: pgsql-admin-owner@postgresql.org
>>> [mailto:pgsql-admin-owner@postgresql.org] On Behalf Of Roberto Garcia
>>> Sent: Wednesday, June 18, 2008 12:01 PM
>>> Cc: pgsql-admin@postgresql.org
>>> Subject: Re: [ADMIN] Major upgrade advice
>>>
>>> Just to mention one issue we had here:
>>>
>>> In 8.1 we did this to retrieve all data from a specific date:
>>> SELECT * FROM xxx
>>> WHERE <timestamp_column> LIKE '2008-05-20%'
>>>
>>> In 8.3 we had to change to:
>>> SELECT * FROM xxx
>>> WHERE <timestamp_column> >= CAST('2008-05-20' as timestamp) AND
>>> <timestamp_column> < CAST('2008-05-21' as timestamp)
>>>
>>> Regards
>>> Roberto Garcia
>>>
>>>
>>>
>>>
>> Roberto Garcia
>> Banco de Dados, MSc
>> Fone: (12) 3186-8405
>> --
>> A luta contra o aquecimento global depende de cada um de nós, faça sua parte, economize recursos naturais.
>> --
>> http://www.cptec.inpe.br
>> http://www.inpe.br
>>
>>
>>
>
>
>
>
Roberto Garcia
Banco de Dados, MSc
Fone: (12) 3186-8405
--
A luta contra o aquecimento global depende de cada um de nós, faça sua parte, economize recursos naturais.
--
http://www.cptec.inpe.brhttp://www.inpe.br
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-admin@postgresql.org
Cc: roberto.garcia@cptec.inpe.br, achill@matrix.gatewaynet.com
Subject: Re: Major upgrade advice
In-Reply-To: <485BAFFB.80300@cptec.inpe.br>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox