Lecciones del módulo (2/2)
Funciones de agregación JSON
Funciones de agregación JSON
La integración es bidireccional. La base de datos no tiene que limitarse a analizar JSON: puede construirlo. Imagínese si su API y Node.js no tuvieran que hacer el trabajo sucio e intensivo de serializar objetos anidados en JSON, porque la base de datos los entregó ya creados directamente desde el disco.
Construyendo objetos y matrices
En lugar de la clásica agregación masiva o concatenación de cadenas (String_agg), recurrimos a estas funciones:
- CÓDIGOPH0 o CÓDIGOPH1
- CÓDIGOPH2 o CÓDIGOPH3
SELECT json_build_object('name', first_name, 'city', city) AS data
FROM customers;Verá filas impresas que contienen { "name": "...", "city": "..." }, perfectamente compatibles.
Desde la tabla 'clientes', devuelva los datos como filas JSON, asignadas con `json_build_object`. Asigne dos claves: 'nombre' vinculado a 'nombre' y 'correo' vinculado a 'correo electrónico'. Utilice `AS customer_doc` para la columna.
Mostrar pista
json_build_object('nombre', nombre, 'correo', correo electrónico)
Solución disponible después de 3 intentos
Para cada pedido (`order_id`), construye en una sola unidad todos los `product_id` que incluye. Desde la tabla 'order_items', ejecute `GROUP BY order_id`. Luego seleccione `order_id` y acumule en una matriz JSON (JSON_AGG) solo los datos `product_id`. Nombra la matriz `products`.
Mostrar pista
JSON_AGG(product_id) más un grupo clásico para recopilar los datos.
Solución disponible después de 3 intentos