Re: JSON / ASP.NET AJAX Dates support in PostgreSQL

From: "Peter J(dot) Holzer" <hjp-pgsql(at)hjp(dot)at>
To: pgsql-general(at)lists(dot)postgresql(dot)org
Subject: Re: JSON / ASP.NET AJAX Dates support in PostgreSQL
Date: 2023-04-14 16:31:16
Message-ID: 20230414163116.ubjrzvgjtqafajcl@hjp.at
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 2023-04-13 10:07:09 -0500, Ron wrote:
> On 4/13/23 09:44, Sebastien Flaesch wrote:
> Is there an easy way to convert JSON data containing ASP.NET AJAX Dates
> into PostgreSQL timestamp?
>
> I have this kind of JSON data:
>
> {
>     "PurchaseOrder" : "4500000000",
>     "CreationDate" : "\/Date(1672358400000)\/",
>     "LastChangeDateTime" : "\/Date(1672692813062+0100)\/"
> }
>
> Warning: Note the backslash before the slashes!

That's a Noop. According to RFC 8259, "\/" is the same as "/" (no idea
why they even specified that - it seems quite pointless).

> According to JSON spec this is valid JSON and used by AJAX Date format.

It's valid JSON, but for JSON it's just a string, not a date.

Any interpretation is strictly by convention between the sender and the
receiver.

> This looks like "milliseconds since the Unix epoch:
>
> $ date -d @1672692813.062
> Mon 02 Jan 2023 02:53:33 PM CST
>
> Thus:
> select to_timestamp(cast(1672692813062 as bigint))::timestamp;

ITYM:

select to_timestamp(1672692813062/1000.0);

hp

--
_ | Peter J. Holzer | Story must make more sense than reality.
|_|_) | |
| | | hjp(at)hjp(dot)at | -- Charles Stross, "Creative writing
__/ | http://www.hjp.at/ | challenge!"

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Peter J. Holzer 2023-04-14 16:40:36 Re: Guidance on INSERT RETURNING order
Previous Message Marc Millas 2023-04-14 16:09:44 Re: SIze 0 in pg_stat_file, pg_stat_progress_copy