Tema SQL
JSON en SQL
Tipo JSON/JSONB y funciones para extraer, construir y consultar documentos.
Descripción
Almacenar payloads flexibles con consultas indexables en motores modernos. Operadores ->, ->>, JSON_ARRAY, JSON_OBJECT y path varían (manual §30.10).
Estructura general
Forma habitual de la sentencia: orden de cláusulas, qué parte filtra, agrupa o proyecta columnas, y qué devuelve el motor. Cópiala como plantilla y sustituye nombres por tus tablas reales.
-- Patrón PostgreSQL ilustrativo
SELECT data->>'email' AS email
FROM usuarios_json
WHERE data @> '{"activo": true}'::jsonb;
Componentes
Cada componente tiene un papel concreto en la ejecución lógica de la sentencia. Léelos en orden: así entiendes qué puedes omitir, qué es obligatorio y qué expresiones son válidas en cada sitio según tu motor.
- Motor
- MySQL JSON_* , PostgreSQL jsonb, SQL Server JSON_VALUE…
Ejemplos
Ejemplo 1
SELECT id,
JSON_EXTRACT(meta, '$.version') AS version
FROM configuracion
WHERE JSON_VALID(meta);
Ejemplo 2
SELECT JSON_KEYS('{"a":1}'); -- nombre de función según motor
Los ejemplos son ilustrativos. En producción usa consultas parametrizadas (prepared statements), revisa índices y aplica el principio de menor privilegio en cuentas de base de datos.