Re: SQL/JSON: functions
Andrew Dunstan <andrew@dunslane.net>
Attachments
- 0001-Add-common-SQL-JSON-clauses-v53.patch.gz (application/gzip) patch v53-0001
- 0002-SQL-JSON-constructors-v53.patch.gz (application/gzip) patch v53-0002
- 0003-IS-JSON-predicate-v53.patch.gz (application/gzip) patch v53-0003
- 0004-SQL-JSON-query-functions-v53.patch.gz (application/gzip) patch v53-0004
- 0005-SQL-JSON-functions-for-json-type-v53.patch.gz (application/gzip) patch v53-0005
- 0006-GUC-sql_json-v53.patch.gz (application/gzip) patch v53-0006
On 3/8/21 1:55 PM, Ibrar Ahmed wrote: > > > On Sat, Jan 23, 2021 at 3:37 PM Erik Rijkers <er@xs4all.nl > <mailto:er@xs4all.nl>> wrote: > > On 2021-01-20 03:49, Nikita Glukhov wrote: > > > [0001-Add-common-SQL-JSON-clauses-v52.patch.gz] > > [0002-SQL-JSON-constructors-v52.patch.gz] > > [0003-IS-JSON-predicate-v52.patch.gz] > > [0004-SQL-JSON-query-functions-v52.patch.gz] > > [0005-SQL-JSON-functions-for-json-type-v52.patch.gz] > > [0006-GUC-sql_json-v52.patch.gz] > > Hi, > > I read through the file func.sgml (only that file) and put the > errors/peculiarities in the attached diff. (Small stuff; typos > really) > > > Your patch includes a CREATE TABLE my_films + INSERT, to run the > examples against. I think this is a great idea and we should do > it more > often. > > But, the table has a text-column to contain the subsequently inserted > json values. The insert runs fine but it turns out that some later > examples queries only run against a jsonb column. So I propose to > change: > CREATE TABLE my_films (js text); > to: > CREATE TABLE my_films (js jsonb); > > This change is not yet included in the attached file. An alternative > would be to cast the text-column in the example queries as js::jsonb > > > I also noticed that some errors were different in the sgml file > than 'in > the event': > > > SELECT JSON_QUERY(js, '$.favorites[*].kind' ERROR ON ERROR) FROM > my_films_jsonb; > (table 'my_films_jsonb' is the same as your 'my_films', but > with js > as a jsonb column) > > manual says: "ERROR: more than one SQL/JSON item" > in reality: "ERROR: JSON path expression in JSON_QUERY should > return > singleton item without wrapper" > and: "HINT: use WITH WRAPPER clause to wrap SQL/JSON item > sequence into array" > > > Thanks, > > Erik Rijkers > > > > > -- > > Nikita Glukhov > > Postgres Professional: http://www.postgrespro.com > <http://www.postgrespro.com> > > The Russian Postgres Company > > > The patch (func.sgml.20210123.diff) does not apply successfully. > > http://cfbot.cputube.org/patch_32_2901.log > <http://cfbot.cputube.org/patch_32_2901.log> > > ---- > === Applying patches on top of PostgreSQL commit ID 0ce4cd04da558178b0186057b721c50a00b7a945 === > === applying patch ./func.sgml.20210123.diff > patching file doc/src/sgml/func.sgml > Hunk #1 FAILED at 16968. > Hunk #2 FAILED at 17034. > ... > Hunk #19 FAILED at 18743. > 19 out of 19 hunks FAILED -- saving rejects to file doc/src/sgml/func.sgml.rej > ---- > > Can we get a rebase? > > I am marking the patch "Waiting on Author". I've rebased this, and applied some of Erik's changes. I'll set it back to 'Needs Review' if the cfbot is happy. cheers andrew -- Andrew Dunstan EDB: https://www.enterprisedb.com
Commits
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
JSON_TABLE: Add support for NESTED paths and columns
- bb766cde63b4 17.0 landed
-
Add basic JSON_TABLE() functionality
- de3600452b61 17.0 landed
-
Add SQL/JSON query functions
- 6185c9737cf4 17.0 landed
-
Add soft error handling to some expression nodes
- aaaf9449ec6b 17.0 landed
-
Adjust populate_record_field() to handle errors softly
- 1edb3b491bee 17.0 landed
-
Refactor code used by jsonpath executor to fetch variables
- faa2b953ba3b 17.0 landed
-
Add more SQL/JSON constructor functions
- 03734a7fed7d 17.0 landed
-
SQL/JSON: support the IS JSON predicate
- 6ee30209a6f1 16.0 landed
-
SQL/JSON: add standard JSON constructor functions
- 7081ac46ace8 16.0 landed
-
Improve readability of SQL/JSON documentation.
- b46bcf7a4b6f 15.0 landed
-
Documentation for SQL/JSON features
- a6baa4baddd5 15.0 landed
-
RETURNING clause for JSON() and JSON_SCALAR()
- 49082c2cc3d8 15.0 landed
-
SQL JSON functions
- 606948b058dc 15.0 landed
-
SQL/JSON query functions
- 1a36bc9dba8e 15.0 landed
-
IS JSON predicate
- 33a377608fc2 15.0 landed
-
SQL/JSON constructors
- f4fb45d15c59 15.0 landed
-
Common SQL/JSON clauses
- f79b803dcc98 15.0 landed
- 865fe4d5df56 15.0 landed
-
Doc: remove obsolete entries in table of BRIN strategy numbers.
- 0ce4cd04da55 14.0 cited
-
Doc: standardize markup a bit more.
- 47046763c3ed 13.0 cited
-
Make pg_regress.c unset PGDATABASE during make installcheck.
- 5ee96b3e2221 13.0 cited
-
Fix handling of GENERATED columns in CREATE TABLE LIKE INCLUDING DEFAULTS.
- b81a9c2fc525 13.0 cited