El método collection.query( ) devuelve todos los elementos de una colección que coinciden con las condiciones de búsqueda definidas por cadenaBusq y (opcionalmente) valor y params.. Si la colección original es una colección compartida, la colección devuelta también es una colección compartida.
Nota: este método no modifica la colección original.
El parámetro cadenaBusq utiliza la siguiente sintaxis:
propertyPath comparator value {logicalOperator propertyPath comparator value}
Para obtener información detallada sobre cómo crear una consulta utilizando los parámetros cadenaBusq, valor y params consulte la descripción del método dataClass.query( ).
Este ejemplo devuelve la personas cuyo nombre contiene "in":
$col:=$c.query("name = :1";"@in@")
Este ejemplo devuelve las personas cuyo nombre no comienza con una cadena de una variable (ingresada por el usuario, por ejemplo):
$col:=$c.query("name # :1";$aString+"@")
Este ejemplo devuelve las personas cuya edad no se conoce (propiedad definida como nula o indefinida):
$col:=$c.query("age=null")
Este ejemplo devuelve las personas contratadas hace más de 90 días:
$col:=$c.query("dateHired < :1";(Current date-90))
Nota: este último ejemplo requiere que esté marcada la opción de compatibilidad "Utilizar el tipo de fecha en lugar del formato de fecha ISO en objetos" (ver Página Compatibilidad).
Se pueden encontrar más ejemplos de búsquedas en la página dataClass.query( ).