Поделиться через


JSON_PATH_EXISTS (Transact-SQL)

Область применения: SQL Server 2022 (16.x) База данных SQL Azure Управляемый экземпляр SQL Azure

Проверяет, существует ли указанный путь SQL/JSON во входной строке JSON.

Соглашения о синтаксисе Transact-SQL

Синтаксис

JSON_PATH_EXISTS( value_expression, sql_json_path )

Аргументы

value_expression

Символьное выражение.

sql_json_path

Допустимый путь SQL/JSON для тестирования во входных данных.

Возвращаемое значение

Возвращает битовое значение 1 или 0NULL. Возвращает, NULL является ли value_expression или входным значением SQL NULL . Возвращает, 1 существует ли заданный путь SQL/JSON во входных данных или возвращает непустую последовательность. Возвращается 0 в противном случае.

Функция JSON_PATH_EXISTS не возвращает ошибки.

Примеры

Пример 1

В следующем примере возвращается значение 1, так как входная строка JSON содержит указанный путь SQL/JSON.

DECLARE @jsonInfo NVARCHAR(MAX)

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

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

Пример 2

В следующем примере возвращается значение 0, так как входная строка JSON не содержит указанный путь SQL/JSON.

DECLARE @jsonInfo NVARCHAR(MAX)

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

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