sql >> Base de Datos >  >> RDS >> SQLite

Funciones y operadores JSON en SQLite (Lista completa)

A continuación se muestra una lista completa de funciones JSON y operadores JSON disponibles en SQLite.

Funciones escalares

Función Descripción
json() Devuelve una versión minimizada de su argumento (cadena JSON) como JSON real. Básicamente, convierte texto sin formato que parece JSON en JSON real.
json_array() Devuelve una matriz JSON bien formada en función de sus argumentos.
json_array_length() Devuelve el número de elementos en una matriz JSON dada.
json_extract() Extrae y devuelve uno o más valores de JSON bien formado.
json_insert() Inserta un nuevo valor en un documento JSON.
json_object() Devuelve un objeto JSON bien formado en función de sus argumentos.
json_patch() Agrega, modifica y/o elimina elementos de un objeto JSON (ejecuta el algoritmo RFC-7396 MergePatch para aplicar un parche dado contra la entrada JSON dada).
json_remove() Elimina uno o más elementos de un objeto o matriz JSON.
json_replace() Reemplaza un valor existente en un documento JSON con otro valor.
json_set() Inserta o reemplaza un valor en un documento JSON.
json_type() Devuelve el tipo del elemento más externo del JSON dado.
json_valid() Comprueba si su argumento es JSON bien formado o no.
json_quote() Convierte un número o cadena en su representación JSON correspondiente.

Funciones agregadas

Función Descripción
json_group_array() Devuelve una matriz JSON compuesta por todos los valores de la agregación.
json_group_object() Devuelve un objeto JSON compuesto por todos los pares de nombre/valor en la agregación.

Funciones con valores de tabla

Función Descripción
json_each() Recorre el valor JSON proporcionado como su primer argumento y devuelve una tabla que consta de una fila para cada elemento de matriz o miembro de objeto. Solo recorre los elementos secundarios inmediatos de la matriz u objeto de nivel superior, o solo el elemento de nivel superior en sí mismo si el elemento de nivel superior es un valor primitivo.
json_tree() Recorre el valor JSON proporcionado como su primer argumento y devuelve una tabla que consta de una fila para cada elemento de matriz o miembro de objeto. Recorre recursivamente la subestructura JSON comenzando con el elemento de nivel superior.

Operadores JSON

SQLite también incluye los siguientes operadores para trabajar con JSON:

Operador Descripción
-> Extrae un subcomponente de un documento JSON y devuelve una representación JSON de ese subcomponente.
->> Extrae un subcomponente de un documento JSON y devuelve una representación SQL de ese subcomponente.

Compatibilidad con JSON en SQLite

A partir de SQLite 3.38.0 (lanzado el 22 de febrero de 2022), las funciones y operadores JSON están integrados en SQLite. Antes de SQLite 3.38.0, necesitaría usar -DSQLITE_ENABLE_JSON1 Opción de tiempo de compilación para habilitar la compatibilidad con JSON.