On Fri, 21 Apr 2000, Benoit Brodard wrote:
> Hi,
>
> We use PostgreSQL 6.5.3 on i586-pc-linux-gnu, compiled by gcc 2.7.2.3, and we get the following results with
date_part:
>
> db=> select date_part( 'dow', date '20000421' );
> date_part
> ---------
> 5
> (1 row)
>
> db=> select date_part( 'dow', date ( '20000421' ) );
> date_part
> ---------
> 6
> (1 row)
>
> Is this correct ?
No it is not.
> If yes, I could not find any explanation for the second result which also
> differ from "select date_part( 'dow', date (20000421) );"
This, together with "hundreds" of other problems, has been fixed in
postgresql-7.0RC1.
btw, the days of the week start with Sunday = 1
so your queries now say:-
template1=# select date_part( 'dow', date '20000421' );date_part
----------- 6
(1 row)
template1=# select date_part( 'dow', date ( '20000421' ) );date_part
----------- 6
(1 row)
However I think this demonstrates a bug in the date functions.
chris@berty:~ > cal 11 1927 # In which I trust. November 1927
Su Mo Tu We Th Fr Sa 1 2 3 4 56 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
template1=# select date_part( 'dow', date '19271124' );date_part
----------- 4
(1 row)
template1=# select date_part( 'dow', date '19271125' );date_part
----------- 5
(1 row)
template1=# select date_part( 'dow', date '19271126' );date_part
----------- 0
(1 row)
template1=# select date_part( 'dow', date '19271127' );date_part
----------- 1
(1 row)
There seems to be a discontinuity here doesn't there?
Using postgresql-7.0RC1.
If somebody could direct me to the general area in the source tree, I might be
able to come up with a patch & btw, to whom should I send it?
--
Sincerely etc.,
NAME Christopher Sawtell - iOpen Technologies Ltd.CELL PHONE 021 257 4451ICQ UIN 45863470EMAIL chris @
iopen. co . nz, csawtell @ xtra . co . nzWWW http://www.iopen.co.nzCNOTES
ftp://ftp.funet.fi/pub/languages/C/tutorials/sawtell_C.tar.gz
-->> Please refrain from using HTML or WORD attachments in e-mails to me <<--