Sorgu
Dizi öğeleri köşeli ayraç ([]) kullanılarak sorgulanabilir. Sorgu, tüm dizi öğelerine karşı değerlendirilir. Sorgu, karşılaştırmak ve JSON belgesindeki herhangi bir öğeye başvuruda bulunmak için öğenin herhangi bir alanını seçebilir.
Aşağıdaki tablo sorgu işleçlerini göstermektedir. a ve b bir sabit ya da JPath yapısı olabilir. Temel seçim, sorgu, aritmetik ve işlevler JPath yapılarıdır.
| Operatör | Açıklama |
|---|---|
| a = b | Eşittir |
| a ! = b | Eşit Değil |
| a > b | Büyüktür |
| a < b | Küçüktür |
| a > = b | Büyüktür ya da eşittir |
| a < = b | Küçüktür ya da eşittir |
| değil | a sonucunu olumsuzlar |
| bir | a ' ın öznitelik olarak var olup olmadığını denetler |
Aşağıdaki tablo, dizi öğelerine uygulayabileceğiniz sorgu işleçlerinin örneklerini göstermektedir.
| Örnek | Açıklama | İl | İfade | Sonuç |
|---|---|---|---|---|
| Eşitlik (ya da Eşitsizlik) | Bir değere eşit özniteliğe sahip nesneler için bir diziyi sorgular. | { "array": [ { "id": 1, "name": "Object 1" },
{ "id": 2, "name": "Object 2" }, { "id": 3,
"name": "Object 3" } ] } |
/array[@id = 2] |
[ { "id": 2, "name": "Object 2" } ] |
| Büyüktür | Bir değerden büyük öznitelikleri olan bir nesne dizisini sorgular. | { "array": [ { "id": 1, "name": "Object 1" },
{ "id": 2, "name": "Object 2" }, { "id": 3,
"name": "Object 3" } ] } |
/array[@id > 1] |
[ { "id": 2, "name": "Object 2" }, { "id": 3,
"name": "Object 3" } ] |
| İlkel | Belirli bir sorguyu geçiren bir diziden temel öğeleri seçer. | { "array": [ "value 1", "value 2", "value 3" ]
} |
/array[@ != "value 2"] |
[ "value 1", "value 3" ] |
| ve | 'and' işleciyle seçer. | { "array": [ "value 1", "value 2", "value 3" ]
} |
/array[@ != "value 2" and @ != 'value 3'] |
[ "value 1" ] |
| Veya | 'or' işleciyle seçer. | { "array": [ "value 1", "value 2", "value 3" ]
} |
/array[@ = "value 2" or @ = "value 3"] |
[ "value 2", "value 3" ] |
| Ayraçlar | Ayraç ile seçer. | { "array": [ "value 1", "value 2", "value 3" ]
} |
/array[not (@ = "value 2" or @ = "value 3")] |
[ "value 1" ] |
| Var | Belirli bir özniteliği olan bir dizinin nesnelerini seçer. | { "array": [ { "id": 1, "name": "Object 1" },
{ "id": 2, "name": "Object 2" }, { "id": 3, } ]
} |
/array[exists @name] |
[ { "id": 1, "name": "Object 1" }, { "id": 2,
"name": "Object 2" } ] |