JSON_PATH_EXISTS (Transact-SQL)
S’applique à : SQL Server 2022 (16.x)base de données Azure SQL Azure SQL Managed Instance
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 0
NULL
. 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 NVARCHAR(MAX)
SET @jsonInfo=N'{"info":{"address":[{"town":"Paris"},{"town":"London"}]}}';
SELECT JSON_PATH_EXISTS(@jsonInfo,'$.info.address'); -- 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 NVARCHAR(MAX)
SET @jsonInfo=N'{"info":{"address":[{"town":"Paris"},{"town":"London"}]}}';
SELECT JSON_PATH_EXISTS(@jsonInfo,'$.info.addresses'); -- 0