Aracılığıyla paylaş


parse_json()

Şunlar için geçerlidir: ✅Microsoft Fabric

bir string değerini JSON değeri olarak yorumlar ve değerini olarak dynamicdöndürür. Mümkünse, değer ilgili veri türlerine dönüştürülür. Veri türü dönüştürmesi olmadan katı ayrıştırma için extract() veya extract_json() işlevlerini kullanın.

Bir JSON bileşik nesnesinin birden fazla öğesini ayıklamanız gerektiğinde parse_json() işlevini extract_json() işlevi üzerinde kullanmak daha iyidir. Mümkün olduğunda dynamic() kullanın.

Kullanım dışı bırakılan diğer adlar: parsejson(), toobject(), todynamic()

Sözdizimi

parse_json( json)

Söz dizimi kuralları hakkında daha fazla bilgi edinin.

Parametreler

Ad Tür Zorunlu Açıklama
json string ✔️ JSON olarak ayrıştırmak için JSON biçimli değer veya dinamik özellik paketi biçimindeki dize.

Döndürülenler

json değeri tarafından belirlenen türdeki dynamicbir nesne:

Örnek

Aşağıdaki örnekte, şuna benzeyen bir context_custom_metrics ne zamandırstring:

{"duration":{"value":118.0,"count":5.0,"min":100.0,"max":150.0,"stdDev":0.0,"sampledValue":118.0,"sum":118.0}}

ardından aşağıdaki sorgu nesnedeki yuvanın duration değerini alır ve bu sorgudan sırasıyla ve duration.value (duration.min ve 118.0) iki yuva 110.0 alır.

datatable(context_custom_metrics:string)
[
    '{"duration":{"value":118.0,"count":5.0,"min":100.0,"max":150.0,"stdDev":0.0,"sampledValue":118.0,"sum":118.0}}'
]
| extend d = parse_json(context_custom_metrics)
| extend duration_value = d.duration.value, duration_min = d.duration.min

Notlar

"Yuvalardan" birinin başka bir JSON dizesi olduğu bir özellik paketini açıklayan bir JSON dizesinin olması yaygın bir durumdur.

Örneğin:

let d='{"a":123, "b":"{\\"c\\":456}"}';
print d

Bu gibi durumlarda, yalnızca iki kez çağırmak parse_json gerekmez, aynı zamanda ikinci çağrıda tostring kullanıldığından emin olmak için de gereklidir. Aksi takdirde, için ikinci çağrı parse_json yalnızca girişi olduğu gibi çıkışa geçirir çünkü bildirilen türü olur dynamic.

let d='{"a":123, "b":"{\\"c\\":456}"}';
print d_b_c=parse_json(tostring(parse_json(d).b)).c