照会
配列エレメントは、大括弧 ( [ ] ) を使用して照会できます。照会は、すべての配列エレメントに対して評価されます。 照会では、比較のためにエレメントの任意のフィールドを選択し、JSON 文書内の任意のものを参照できます。
以下の表に、照会演算子を示します。 a および b は、定数または JPath 構造のいずれかにすることができます。 基本選択、照会、算術、および関数が、JPath 構造です。
| 演算子 | 説明 |
|---|---|
| a = b | 等しい |
| a ! = b | 等しくない |
| a > B | より大きい |
| a < b | より小さい |
| a > = b | 以上 |
| a <= b | 以下 |
| a 以外 | a の結果の否定 |
| 存在 a | a が属性として存在するかどうかを検査 |
以下の表に、配列エレメントに適用できる照会演算子の例を示します。
| 例 | 説明 | 状態 | 式 | 結果 |
|---|---|---|---|---|
| 等しいこと (または等しくないこと) | 配列で、指定値に等しい属性を持つオブジェクトを照会します。 | { "array": [ { "id": 1, "name": "Object 1" },
{ "id": 2, "name": "Object 2" }, { "id": 3,
"name": "Object 3" } ] } |
/array[@id = 2] |
[ { "id": 2, "name": "Object 2" } ] |
| より大きい | 配列で、指定値より大きい属性を持つオブジェクトを照会します。 | { "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" } ] |
| プリミティブ | 特定の照会を渡す配列からプリミティブを選択します。 | { "array": [ "value 1", "value 2", "value 3" ]
} |
/array[@ != "value 2"] |
[ "value 1", "value 3" ] |
| AND | 「and」演算子を使用して選択します。 | { "array": [ "value 1", "value 2", "value 3" ]
} |
/array[@ != "value 2" and @ != 'value 3'] |
[ "value 1" ] |
| それとも | 「or」演算子を使用して選択します。 | { "array": [ "value 1", "value 2", "value 3" ]
} |
/array[@ = "value 2" or @ = "value 3"] |
[ "value 2", "value 3" ] |
| 小括弧 | 小括弧を使用して選択します。 | { "array": [ "value 1", "value 2", "value 3" ]
} |
/array[not (@ = "value 2" or @ = "value 3")] |
[ "value 1" ] |
| 存在 | 特定の属性を持つ配列のオブジェクトを選択します。 | { "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" } ] |