JSON_PATH_EXISTS (Transact-SQL)
Aplica-se a: SQL Server 2022 (16.x) Banco de Dados SQL do Azure Instância Gerenciada de SQL do Azure
Testa se existe um caminho SQL/JSON especificado na cadeia de caracteres JSON de entrada.
Convenções de sintaxe de Transact-SQL
Sintaxe
JSON_PATH_EXISTS( value_expression, sql_json_path )
Argumentos
value_expression
Uma expressão de caractere.
sql_json_path
Um caminho SQL/JSON válido a ser testado na entrada.
Valor retornado
Retorna um valor int de 1
ou 0
ou .NULL
Retornará NULL
se value_expression ou a entrada for um valor NULL
SQL. Retornará 1
se o caminho SQL/JSON fornecido existir na entrada ou retornará uma sequência não vazia. Retorna 0
, caso contrário.
A função JSON_PATH_EXISTS
não retorna erros.
Exemplos
Exemplo 1
O exemplo a seguir retorna 1, pois a cadeia de caracteres JSON de entrada contém o caminho SQL/JSON especificado.
DECLARE @jsonInfo NVARCHAR(MAX)
SET @jsonInfo=N'{"info":{"address":[{"town":"Paris"},{"town":"London"}]}}';
SELECT JSON_PATH_EXISTS(@jsonInfo,'$.info.address'); -- 1
Exemplo 2
O exemplo a seguir retorna 0 porque a cadeia de caracteres JSON de entrada não contém o caminho SQL/JSON especificado.
DECLARE @jsonInfo NVARCHAR(MAX)
SET @jsonInfo=N'{"info":{"address":[{"town":"Paris"},{"town":"London"}]}}';
SELECT JSON_PATH_EXISTS(@jsonInfo,'$.info.addresses'); -- 0