Consulta

Los elementos de matriz se pueden consultar utilizando corchetes ([]). La consulta se evalúa con respecto a todos los elementos de matriz. La consulta puede seleccionar cualquier campo del elemento para la comparación y hacer referencia a cualquier cosa del documento JSON.

La tabla siguiente muestra los operadores de consulta. a y b pueden ser una constante o una construcción JPath. La selección básica, la consulta, la aritmética y las funciones son construcciones JPath.
Tabla 1. Operadores de consulta
Operador Descripción
a = b Igual
a ! = b No igual a
a > b Mayor que
a < b Menor que
a > = b Mayor o igual que
a < = b Menor o igual que
no a Niega el resultado de a
existe un Comprueba si existe un como atributo

La tabla siguiente muestra ejemplos de los operadores de consulta que puede aplicar a los elementos de matriz.

Tabla 2. Ejemplos de consulta
Ejemplo Descripción Estado Expresión Resultado
Igualdad (o desigualdad) Consulta una matriz para objetos con un atributo igual a un valor. { "array": [ { "id": 1, "name": "Object 1" }, { "id": 2, "name": "Object 2" }, { "id": 3, "name": "Object 3" } ] } /array[@id = 2] [ { "id": 2, "name": "Object 2" } ]
Mayor que Consulta una matriz de objetos con atributos mayores que un valor. { "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" } ]
Primitivos Selecciona primitivas de una matriz que pasa una consulta específica. { "array": [ "value 1", "value 2", "value 3" ] } /array[@ != "value 2"] [ "value 1", "value 3" ]
Y Selecciona con el operador 'and'. { "array": [ "value 1", "value 2", "value 3" ] } /array[@ != "value 2" and @ != 'value 3'] [ "value 1" ]
O Selecciona con el operador 'o'. { "array": [ "value 1", "value 2", "value 3" ] } /array[@ = "value 2" or @ = "value 3"] [ "value 2", "value 3" ]
Paréntesis Selecciona con paréntesis. { "array": [ "value 1", "value 2", "value 3" ] } /array[not (@ = "value 2" or @ = "value 3")] [ "value 1" ]
Existe Selecciona objetos de una matriz que tienen un atributo específico. { "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" } ]