رد: BUG #16419: wrong parsing BC year in to_date() function - Mailing list pgsql-bugs

From دار الآثار للنشر والتوزيع-صنعاء Dar Alathar-Yemen
Subject رد: BUG #16419: wrong parsing BC year in to_date() function
Date
Msg-id AM0PR03MB3570F99911704BFC77294DA1BFA50@AM0PR03MB3570.eurprd03.prod.outlook.com
Whole thread Raw
In response to Re: BUG #16419: wrong parsing BC year in to_date() function  ("David G. Johnston" <david.g.johnston@gmail.com>)
Responses Re: BUG #16419: wrong parsing BC year in to_date() function
List pgsql-bugs

Any one suppose that these functions return the same:
make_date(-1,1,1)
to_date('-1-01-01','yyyy-mm-dd')

But make_date will give 0001-01-01 BC

And to_date will give 0002-01-01 BC

 

If you think this is right behavior I think this must be documented

 

من: David G. Johnston <david.g.johnston@gmail.com>
‏‏تم الإرسال:
Thursday, May 7, 2020 1:45:14 AM
إلى:
dar_alathar@hotmail.com <dar_alathar@hotmail.com>; PostgreSQL mailing lists <pgsql-bugs@lists.postgresql.org>
‏‏الموضوع:
Re: BUG #16419: wrong parsing BC year in to_date() function

 

On Wed, May 6, 2020 at 2:58 PM PG Bug reporting form <noreply@postgresql.org> wrote:

The following bug has been logged on the website:

Bug reference:      16419
Logged by:          Saeed Hubaishan
Email address:      dar_alathar@hotmail.com
PostgreSQL version: 12.2
Operating system:   Windows 10x64
Description:       

select to_date('-1-01-01','yyyy-mm-dd');
will get
0002-01-01 BC

 

Yep...

 

select to_date('1','YYYY')::text; // Year 1 AD

select to_date('0','YYYY')::text; // Year 1 BC (there is no year zero)

select to_date('-1','YYYY')::text; // Year 2 BC

 

to_date tries very hard to not error - if you need to use it make sure your data conforms to the format you specify.

 

David J.

 

من: David G. Johnston
إرسال: ‏الخميس,‏ ‏14 ‏رمضان,‏ ‏1441 ‏01
:45 ‏ص
الموضوع:
Re: BUG #16419: wrong parsing BC year in to_date() function

 

On Wed, May 6, 2020 at 2:58 PM PG Bug reporting form <noreply@postgresql.org> wrote:

The following bug has been logged on the website:

Bug reference:      16419
Logged by:          Saeed Hubaishan
Email address:      dar_alathar@hotmail.com
PostgreSQL version: 12.2
Operating system:   Windows 10x64
Description:       

select to_date('-1-01-01','yyyy-mm-dd');
will get
0002-01-01 BC

 

Yep...

 

select to_date('1','YYYY')::text; // Year 1 AD

select to_date('0','YYYY')::text; // Year 1 BC (there is no year zero)

select to_date('-1','YYYY')::text; // Year 2 BC

 

to_date tries very hard to not error - if you need to use it make sure your data conforms to the format you specify.

 

David J.

 

 

Attachment

pgsql-bugs by date:

Previous
From: "David G. Johnston"
Date:
Subject: Re: BUG #16419: wrong parsing BC year in to_date() function
Next
From: "David G. Johnston"
Date:
Subject: Re: BUG #16419: wrong parsing BC year in to_date() function