Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir: SQL Server 2016 (13.x) ve sonraki sürümleri
Azure SQL Veritabanı
Azure SQL Yönetilen Örneği
Azure Synapse Analytics
SQL analiz uç noktası Microsoft Fabric'teki Microsoft Fabric
SQL veritabanında Microsoft Fabric'te
Söz ISJSON dizimi, bir dizenin geçerli JSON içerip içermediğini sınar.
Transact-SQL söz dizimi kuralları
Syntax
ISJSON ( expression [, json_type_constraint] )
Arguments
expression
Test için dize.
json_type_constraint
Girişi iade etmek için JSON türünü belirtir. Geçerli değerler : VALUE, ARRAY, OBJECTveya SCALAR. SQL Server 2022(16.x) ile kullanıma sunulmuştur.
Note
json_type_constraint bağımsız değişkeni Azure Synapse Analytics Ayrılmış havuzlarında desteklenmez
Dönüş değeri
Dize geçerli JSON içeriyorsa döndürür 1 ; aksi takdirde döndürür 0.
NULL null ise döndürür.
deyimi json_type_constraint atlarsa, işlev girişin geçerli bir JSON nesnesi veya dizisi olup olmadığını test eder ve 1 aksi takdirde döndürür 0.
json_type_constraint belirtilirse işlev JSON türünü aşağıdaki gibi denetler:
| Value | Description |
|---|---|
VALUE |
Geçerli bir JSON değeri için testler. Bu bir JSON nesnesi, dizisi, sayı, dize veya üç değişmez değerden biri (false, true, null) olabilir |
ARRAY |
Geçerli bir JSON dizisi için testler |
OBJECT |
Geçerli bir JSON nesnesi için testler |
SCALAR |
Geçerli bir JSON skaler için testler – sayı veya dize |
SCALAR json_type_constraint değeri, en üst düzeyde yalnızca JSON skaler değeri içeren IETF RFC 8259 uyumlu JSON belgesini test etmek için kullanılabilir. En üst düzeyde JSON skaler değeri içermeyen bir JSON belgesi IETF RFC 4627 ile uyumlu.
Hata döndürmez.
Remarks
ISJSON anahtarların benzersizliğini aynı düzeyde denetlemez.
Examples
Örnek 1
Aşağıdaki örnek, parametre değeri @param geçerli JSON içeriyorsa koşullu olarak bir deyim bloğu çalıştırır.
DECLARE @param <data type>
SET @param = <value>
IF (ISJSON(@param) > 0)
BEGIN
-- Do something with the valid JSON value of @param.
END
Örnek 2
Aşağıdaki örnek, sütunun json_col geçerli JSON içerdiği satırları döndürür.
SELECT id, json_col
FROM tab1
WHERE ISJSON(json_col) = 1
Örnek 3
Aşağıdaki örnek, sütunun json_col en üst düzeyde geçerli JSON SCALAR değeri içerdiği satırları döndürür.
SELECT id, json_col
FROM tab1
WHERE ISJSON(json_col, SCALAR) = 1
Örnek 4
Giriş geçerli bir JSON değeri olduğundan aşağıdaki örnek 1 döndürür - true.
SELECT ISJSON('true', VALUE)
Örnek 5
Giriş geçersiz bir JSON değeri olduğundan aşağıdaki örnek 0 döndürür.
SELECT ISJSON('test string', VALUE)
Örnek 6
Giriş RFC 8259'a göre geçerli bir JSON skaler olduğundan aşağıdaki örnek 1 döndürür.
SELECT ISJSON('"test string"', SCALAR)
İlgili içerik
- SQL Server içindeki JSON verileri