25.5 SQL/JSON Function JSON_OBJECTAGG
SQL/JSON function json_objectagg constructs a JSON object
by aggregating information from multiple rows of a grouped SQL query as the object members.
Unlike the case for SQL/JSON function json_object, where the
number of members in the resulting object directly reflects the number of arguments, for
json_objectagg the size of the resulting object reflects the current queried
data. It can thus vary, depending on the data that is queried.
Example 25-10 Using JSON_OBJECTAGG to Construct a JSON Object
This example constructs a single JSON object from table
hr.departments (from standard database schema HR) using field
names taken from column department_name and field values taken from column
department_id.
Just as for SQL/JSON condition is json, you can use keywords STRICT and WITH UNIQUE KEYS with functions json_object and json_objectagg. The behavior for each is the same as for is json.
SELECT json_objectagg(department_name VALUE department_id)
FROM departments;
-- The returned object is pretty-printed here for clarity.
-- The order of the object members is arbitrary.
JSON_OBJECTAGG(DEPARTMENT_NAMEISDEPARTMENT_ID)
----------------------------------------------
{"Administration": 10,
"Marketing": 20,
"Purchasing": 30,
"Human Resources": 40,
"Shipping": 50,
"IT": 60,
"Public Relations": 70,
"Sales": 80,
"Executive": 90,
"Finance": 100,
"Accounting": 110,
"Treasury": 120,
"Corporate Tax": 130,
"Control And Credit": 140,
"Shareholder Services": 150,
"Benefits": 160,
"Manufacturing": 170,
"Construction": 180,
"Contracting": 190,
"Operations": 200,
"IT Support": 210,
"NOC": 220,
"IT Helpdesk": 230,
"Government Sales": 240,
"Retail Sales": 250,
"Recruiting": 260,
"Payroll": 270}
See Also:
Oracle AI Database SQL
Language Reference
for information about SQL/JSON function json_objectagg
Related Topics
Parent topic: Generation of JSON Data Using SQL