照会

配列エレメントは、大括弧 ( [ ] ) を使用して照会できます。照会は、すべての配列エレメントに対して評価されます。 照会では、比較のためにエレメントの任意のフィールドを選択し、JSON 文書内の任意のものを参照できます。

以下の表に、照会演算子を示します。 a および b は、定数または JPath 構造のいずれかにすることができます。 基本選択、照会、算術、および関数が、JPath 構造です。
表 1. 照会演算子
演算子 説明
a = b 等しい
a ! = b 等しくない
a > B より大きい
a < b より小さい
a > = b 以上
a <= b 以下
a 以外 a の結果の否定
存在 a a が属性として存在するかどうかを検査

以下の表に、配列エレメントに適用できる照会演算子の例を示します。

表 2. 照会の例
説明 状態 結果
等しいこと (または等しくないこと) 配列で、指定値に等しい属性を持つオブジェクトを照会します。 { "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" } ]