다음을 통해 공유


JSON_PATH_EXISTS(Transact-SQL)

적용 대상: SQL Server 2022(16.x) Azure SQL 데이터베이스 Azure SQL Managed Instance

지정된 SQL/JSON 경로가 입력 JSON 문자열에 있는지 여부를 테스트합니다.

Transact-SQL 구문 표기 규칙

구문

JSON_PATH_EXISTS( value_expression, sql_json_path )

인수

value_expression

문자 식입니다.

sql_json_path

입력에서 테스트할 유효한 SQL/JSON 경로입니다.

반환 값

또는 0 .의 1 int 값을 반환합니다NULL. value_expression 또는 입력이 SQL NULL 값이면 NULL을(를) 반환합니다. 지정된 SQL/JSON 경로가 입력에 있거나 비어 있지 않은 시퀀스를 반환하면 1을(를) 반환합니다. 그렇지 않으면 0을(를) 반환합니다.

JSON_PATH_EXISTS 함수는 오류를 반환하지 않습니다.

예제

예 1

다음 예제에서는 입력 JSON 문자열에 지정된 SQL/JSON 경로가 포함되어 있기 때문에 1을 반환합니다.

DECLARE @jsonInfo NVARCHAR(MAX)

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

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

예 2

다음 예제에서는 입력 JSON 문자열에 지정된 SQL/JSON 경로가 포함되어 있기 때문에 0을 반환합니다.

DECLARE @jsonInfo NVARCHAR(MAX)

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

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