JSON_PATH_EXISTS (Transact-SQL)
gäller för: SQL Server 2022 (16.x) Azure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsSQL-analysslutpunkt i Microsoft FabricWarehouse i Microsoft Fabric
Testar om det finns en angiven SQL/JSON-sökväg i JSON-indatasträngen.
Transact-SQL syntaxkonventioner
Syntax
JSON_PATH_EXISTS( value_expression , sql_json_path )
Argument
value_expression
Ett teckenuttryck.
sql_json_path
En giltig SQL/JSON-sökväg som ska testas i indata.
Returvärde
Returnerar ett int-värde för 1
eller 0
eller NULL
. Returnerar NULL
om value_expression eller indata är ett SQL-NULL
värde. Returnerar 1
om den angivna SQL/JSON-sökvägen finns i indata eller returnerar en icke-tom sekvens. Returnerar 0
annars.
Funktionen JSON_PATH_EXISTS
returnerar inte fel.
Exempel
Exempel 1
Följande exempel returnerar 1 eftersom JSON-indatasträngen innehåller den angivna SQL/JSON-sökvägen. I det här exemplet används en kapslad sökväg där nyckeln finns i ett annat objekt.
DECLARE @jsonInfo AS NVARCHAR (MAX);
SET @jsonInfo = N'{"info":{"address":[{"town":"Paris"},{"town":"London"}]}}';
SELECT JSON_PATH_EXISTS(@jsonInfo, '$.info.address');
Här är resultatuppsättningen.
1
Exempel 2
Följande exempel returnerar 0 eftersom JSON-indatasträngen inte innehåller den angivna SQL/JSON-sökvägen.
DECLARE @jsonInfo AS NVARCHAR (MAX);
SET @jsonInfo = N'{"info":{"address":[{"town":"Paris"},{"town":"London"}]}}';
SELECT JSON_PATH_EXISTS(@jsonInfo, '$.info.addresses');
Här är resultatuppsättningen.
0