Partager via


JSON_PATH_EXISTS (Transact-SQL)

s’applique à : SQL Server 2022 (16.x) Azure SQL DatabaseAzure SQL Managed Instancepoint de terminaison d’analytique SQLSQL Analytics dans Microsoft FabricWarehouse dans Microsoft Fabric

Teste si un chemin SQL/JSON spécifié existe dans la chaîne JSON d’entrée.

Conventions de la syntaxe Transact-SQL

Syntaxe

JSON_PATH_EXISTS( value_expression , sql_json_path )

Arguments

value_expression

Expression de caractère.

sql_json_path

Chemin SQL/JSON valide à tester dans l’entrée.

Valeur retournée

Retourne une valeur int de 1 ou 0NULL. Retourne NULL si value_expression ou l’entrée est une valeur SQL NULL. Retourne 1 si le chemin SQL/JSON donné existe dans l’entrée ou retourne une séquence non vide. Renvoie 0 dans le cas contraire.

La fonction JSON_PATH_EXISTS ne retourne pas d’erreurs.

Exemples

Exemple 1

L’exemple suivant retourne 1, car la chaîne JSON d’entrée contient le chemin SQL/JSON spécifié.

DECLARE @jsonInfo AS NVARCHAR (MAX);

SET @jsonInfo = N'{"info":{"address":[{"town":"Paris"},{"town":"London"}]}}';

SELECT JSON_PATH_EXISTS(@jsonInfo, '$.info.address');

Voici le jeu de résultats.

1

Exemple 2

L’exemple suivant retourne 0, car la chaîne JSON d’entrée ne contient pas le chemin SQL/JSON spécifié.

DECLARE @jsonInfo AS NVARCHAR (MAX);

SET @jsonInfo = N'{"info":{"address":[{"town":"Paris"},{"town":"London"}]}}';

SELECT JSON_PATH_EXISTS(@jsonInfo, '$.info.addresses');

Voici le jeu de résultats.

0