Filtering

Fields can be filtered by adding a filter to the field name.

  • Filters are case insensitiv.
  • Arguments are separated by whitespace.
  • Strings and enum arguments are enclosed with single quotes.
  • Boolean arguments are expressed with numbers 0 and 1.

Filter operations

Toql Operation Example SQL MySQL
eq equal age eq 50 age = 50
eqn equal null age eqn age IS NULL
ne not equal name ne 'foo' name <> 'foo'
nen not equal null age nen age IS NOT NULL
gt greater than age gt 16 age > 16
ge greater than or equal age ge 16 age >= 16
lt less than age lt 16 age < 16
le less than or equal age le 16 age <= 16
bw between age bw 16 20 age BETWEEN 16 AND 20
in includes name in 'Peter' 'Susan' name in ('Peter, 'Susan')
out excludes age out 1 2 3 name not in (1, 2, 3)
re matches regular expression name re ".*" name REGEXP '.*'
fn custom function search fn ma 'arg1' depends on implementation

Custom functions

Custom functions are applied through the FN filter. They must be handled by a Field Handler. See API for details.