JSON_PATH_EXISTS (Transact-SQL)
se aplica a: SQL Server 2022 (16.x) Azure SQL DatabaseInstancia administrada de Azure SQLpunto de conexión de Análisis sql de Azure Synapse AnalyticsSQL en Microsoft FabricWarehouse en Microsoft Fabric
Comprueba si existe una ruta de acceso JSON o SQL especificada en la cadena JSON de entrada.
Convenciones de sintaxis de Transact-SQL
Sintaxis
JSON_PATH_EXISTS( value_expression , sql_json_path )
Argumentos
value_expression
Una expresión de caracteres.
sql_json_path
Una ruta de acceso SQL/JSON válida que lleva a la prueba de la entrada.
Valor devuelto
Devuelve un valor int de 1
o 0
NULL
. Devuelve NULL
si la value_expression o la entrada es un valor NULL
de SQL. Devuelve 1
si la ruta de acceso SQL/JSON especificada existe en la entrada o devuelve una secuencia no vacía. De lo contrario, devuelve 0
.
La función JSON_PATH_EXISTS
no devuelve errores.
Ejemplos
Ejemplo 1
En el ejemplo siguiente se devuelve 1, ya que la cadena JSON de entrada contiene la ruta de acceso SQL/JSON especificada.
DECLARE @jsonInfo AS NVARCHAR (MAX);
SET @jsonInfo = N'{"info":{"address":[{"town":"Paris"},{"town":"London"}]}}';
SELECT JSON_PATH_EXISTS(@jsonInfo, '$.info.address');
Este es el conjunto de resultados.
1
Ejemplo 2
En el ejemplo siguiente se devuelve 0, ya que la cadena JSON de entrada no contiene la ruta de acceso SQL/JSON especificada.
DECLARE @jsonInfo AS NVARCHAR (MAX);
SET @jsonInfo = N'{"info":{"address":[{"town":"Paris"},{"town":"London"}]}}';
SELECT JSON_PATH_EXISTS(@jsonInfo, '$.info.addresses');
Este es el conjunto de resultados.
0