pgsql: Support for ISO 8601 in the jsonpath .datetime() method - Mailing list pgsql-committers

From Alexander Korotkov
Subject pgsql: Support for ISO 8601 in the jsonpath .datetime() method
Date
Msg-id E1kNBVU-0001po-AR@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Support for ISO 8601 in the jsonpath .datetime() method

The SQL standard doesn't require jsonpath .datetime() method to support the
ISO 8601 format.  But our to_json[b]() functions convert timestamps to text in
the ISO 8601 format in the sake of compatibility with javascript.  So, we add
support of the  ISO 8601 to the jsonpath .datetime() in the sake compatibility
with to_json[b]().

The standard mode of datetime parsing currently supports just template patterns
and separators in the format string.  In order to implement ISO 8601, we have to
add support of the format string double quotes to the standard parsing mode.

Discussion: https://postgr.es/m/94321be0-cc96-1a81-b6df-796f437f7c66%40postgrespro.ru
Author: Nikita Glukhov, revised by me
Backpatch-through: 13

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/927d9abb6538e441aa97bb3eea7a15d4cda70715

Modified Files
--------------
src/backend/utils/adt/formatting.c           | 20 +++++++++++++++++---
src/backend/utils/adt/jsonpath_exec.c        |  8 +++++++-
src/test/regress/expected/jsonb_jsonpath.out | 19 +++++++++++++++++++
src/test/regress/sql/jsonb_jsonpath.sql      |  6 ++++++
4 files changed, 49 insertions(+), 4 deletions(-)


pgsql-committers by date:

Previous
From: Fujii Masao
Date:
Subject: pgsql: Archive timeline history files in standby if archive_mode is set
Next
From: Alexander Korotkov
Date:
Subject: pgsql: Support for ISO 8601 in the jsonpath .datetime() method