Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Vonatkozik a következőkre: SQL Server 2022 (16.x) és későbbi verziók
, Azure SQL Database,
Azure SQL Managed Instance
,Azure Synapse Analytics,
SQL database in Microsoft Fabric
A JSON_PATH_EXISTS szintaxis azt ellenőrzi, hogy létezik-e megadott SQL/JSON-elérési út a bemeneti JSON-sztringben.
Transact-SQL szintaxis konvenciói
Syntax
JSON_PATH_EXISTS( value_expression , sql_json_path )
Arguments
value_expression
Karakterkifejezés.
sql_json_path
Érvényes SQL/JSON-elérési út a bemenetben való teszteléshez.
Visszaadott érték
1, 0 vagy NULLint értékét adja vissza. Akkor adja NULL vissza, ha a value_expression vagy bemenet EGY SQL-érték NULL .
1 ad vissza, ha a megadott SQL/JSON-elérési út létezik a bemenetben, vagy nem üres sorozatot ad vissza. Máskülönben 0 ad vissza.
A JSON_PATH_EXISTS függvény nem ad vissza hibákat.
Examples
1. példa
Az alábbi példa 1 értéket ad vissza, mivel a bemeneti JSON-sztring tartalmazza a megadott SQL/JSON-elérési utat. Ez a példa beágyazott elérési utat használ, ahol a kulcs egy másik objektumban található.
DECLARE @jsonInfo AS NVARCHAR (MAX);
SET @jsonInfo = N'{"info":{"address":[{"town":"Paris"},{"town":"London"}]}}';
SELECT JSON_PATH_EXISTS(@jsonInfo, '$.info.address');
Itt van az eredményhalmaz.
1
2. példa
Az alábbi példa 0 értéket ad vissza, mivel a bemeneti JSON-sztring nem tartalmazza a megadott SQL/JSON elérési utat.
DECLARE @jsonInfo AS NVARCHAR (MAX);
SET @jsonInfo = N'{"info":{"address":[{"town":"Paris"},{"town":"London"}]}}';
SELECT JSON_PATH_EXISTS(@jsonInfo, '$.info.addresses');
Itt van az eredményhalmaz.
0
3. példa
Az alábbi példa helyettesítő karaktert használ JSON_PATH_EXISTS() :
DECLARE @jsonInfo AS NVARCHAR (MAX);
SET @jsonInfo = N'{"info":{"address":[{"town":"Paris"},{"town":"London"}]}}';
SELECT JSON_PATH_EXISTS(@jsonInfo, '$.info.address[*].town'); -- Returns: 1
Itt van az eredményhalmaz.
1
Az alábbiakban a tömb legalább egy elemét megkeresi egy kulccsal townrendelkező objektum, és talál egyet.
SET @jsonInfo = N'{"info":{"address":[{"town":"Paris"},{"city":"London"}]}}';
SELECT JSON_PATH_EXISTS(@jsonInfo, '$.info.address[*].town'); -- Returns: 1 (at least one element in array has an object with key "town")
Itt van az eredményhalmaz.
1
Az alábbiakban a tömb legalább egy elemének van egy kulcssal townrendelkező objektuma, de nem talál egyet.
SET @jsonInfo = N'{"info":{"address":[{"city":"Paris"},{"city":"London"}]}}';
SELECT JSON_PATH_EXISTS(@jsonInfo, '$.info.address[*].town'); -- Returns: 0 (no elements in array has an object with key "town")
Itt van az eredményhalmaz.
0
Kapcsolódó tartalom
- JSON-adatok AZ SQL Server