JSON/JSONB documentation, aggregate functions

Started by PG Bug reporting formover 3 years ago3 messagesdocs
Jump to latest
#1PG Bug reporting form
noreply@postgresql.org

The following documentation comment has been logged on the website:

Page: https://www.postgresql.org/docs/14/functions-json.html
Description:

Regarding the Json documentation (9.16.1: processing and creating JSON
data), I would like to suggest that the reference to
json_agg/jsonb_agg/json_object_agg/jsonb_object_agg (section 9.21) be made
more prominent. When looking through the list of json[b] processing
functions, it's really easy to miss the footnote mentioning the aggregate
functions. The list of functions in table 9.47 includes a lot of functions
that are *really*similar in purpose to the json aggregator functions, and
it's easy to assume that anything related to building JSON[B] objects *must*
be listed there. I just spent hours searching for a way to turn one column
of keys and one column of values into a JSONB object (without coercing all
numeric values to json strings), and I can't imagine I'm the only one.

Regards,
Alex Denman

#2Bruce Momjian
bruce@momjian.us
In reply to: PG Bug reporting form (#1)
Re: JSON/JSONB documentation, aggregate functions

On Fri, Sep 16, 2022 at 08:08:04PM +0000, PG Doc comments form wrote:

The following documentation comment has been logged on the website:

Page: https://www.postgresql.org/docs/14/functions-json.html
Description:

Regarding the Json documentation (9.16.1: processing and creating JSON
data), I would like to suggest that the reference to
json_agg/jsonb_agg/json_object_agg/jsonb_object_agg (section 9.21) be made
more prominent. When looking through the list of json[b] processing
functions, it's really easy to miss the footnote mentioning the aggregate
functions. The list of functions in table 9.47 includes a lot of functions
that are *really*similar in purpose to the json aggregator functions, and
it's easy to assume that anything related to building JSON[B] objects *must*
be listed there. I just spent hours searching for a way to turn one column
of keys and one column of values into a JSONB object (without coercing all
numeric values to json strings), and I can't imagine I'm the only one.

I see your point --- that the aggregate sentence is at the end of the
section, after four massive tables. The attached patch moves the
paragraph up to the end of the section's introductory paragraph.

--
Bruce Momjian <bruce@momjian.us> https://momjian.us
EDB https://enterprisedb.com

Indecision is a decision. Inaction is an action. Mark Batterson

Attachments:

agg.difftext/x-diff; charset=us-asciiDownload+6-9
#3Bruce Momjian
bruce@momjian.us
In reply to: Bruce Momjian (#2)
Re: JSON/JSONB documentation, aggregate functions

On Tue, Oct 11, 2022 at 11:48:21AM -0400, Bruce Momjian wrote:

On Fri, Sep 16, 2022 at 08:08:04PM +0000, PG Doc comments form wrote:

Regarding the Json documentation (9.16.1: processing and creating JSON
data), I would like to suggest that the reference to
json_agg/jsonb_agg/json_object_agg/jsonb_object_agg (section 9.21) be made
more prominent. When looking through the list of json[b] processing
functions, it's really easy to miss the footnote mentioning the aggregate
functions. The list of functions in table 9.47 includes a lot of functions
that are *really*similar in purpose to the json aggregator functions, and
it's easy to assume that anything related to building JSON[B] objects *must*
be listed there. I just spent hours searching for a way to turn one column
of keys and one column of values into a JSONB object (without coercing all
numeric values to json strings), and I can't imagine I'm the only one.

I see your point --- that the aggregate sentence is at the end of the
section, after four massive tables. The attached patch moves the
paragraph up to the end of the section's introductory paragraph.

Patch applied back to PG 10, thanks.

--
Bruce Momjian <bruce@momjian.us> https://momjian.us
EDB https://enterprisedb.com

Indecision is a decision. Inaction is an action. Mark Batterson