Re: SQL/JSON: functions
Andrew Dunstan <andrew@dunslane.net>
On 4/8/22 08:02, Justin Pryzby wrote: > On Thu, Mar 31, 2022 at 04:25:58PM -0400, Andrew Dunstan wrote: >> No code chunks left, only a documentation patch which should land > Documentation review for a6baa4bad. > >> Construct a JSON the provided strings: > a JSON what ? > *from* the provided strings ? > >> Construct a JSON from the provided values various types: > should say "a JSON scalar" ? > *of* various types ? > >> Construct a JSON object from the provided key/value pairs of various types: > For comparison, that one looks ok. > > + <function>JSON_EXISTS</function> function checks whether the provided > + <function>JSON_VALUE</function> function extracts a value from the provided > + <function>JSON_QUERY</function> function extracts an <acronym>SQL/JSON</acronym> > + <function>JSON_TABLE</function> function queries <acronym>JSON</acronym> data > + <function>JSON_TABLE</function> uses the > + <function>JSON_SERIALIZE</function> function transforms a SQL/JSON value > > I think all these should all begin with "THE >...< function ...", like the > others do. > > +To use other types, you must create the <literal>CAST</literal> from <type>json</type> for this type. > => create a cast from json to this type. > > +Values can be null, but not keys. > I think it's clearer to say "..but keys cannot." > > + For any scalar other than a number or a Boolean the text > > Boolean COMMA the text > > + The path name must be unique and cannot coincide with column names. > Maybe say "name must be unique and distinct from the column names." > > + ... If you specify a <command>GROUP BY</command> > + or an <command>ORDER BY</command> clause, this function returns a separate JSON object > + for each table row. > > "for each table row" sounds inaccurate or imprecise. The SELECT docs say this: > | GROUP BY will condense into a single row all selected rows that share the same values for the grouped expressions > > BTW, the documentation references look a little like OIDs... > Does someone already have an SNMP-based doc browser ? > | For details, see Section 9.16.3.4.2. Many thanks, useful. I already had a couple of these items on my list but I ran out of time before tiredness overcame me last night. I'm planning on removing some of that stuff that generates the last complaint if I can do it without too much violence. 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