Skip to content
joelwatson edited this page May 19, 2015 · 1 revision

There are several built-in criteria that can be used, either via SQL-like syntax or the DSL, to filter the result set. The currently available criteria are:

  • eq - Property value is equal to criteria value
  • neq - Property value is not equal to criteria value
  • gt - Property value is greater than criteria value
  • gte - Property value is greater than or equal to criteria value
  • lt - Property value is less than property value
  • lte - Property value is less than or equal to criteria value
  • like - Property value is like criteria value
  • not like - Property value is not like criteria value
  • is null - Property value is null or undefined
  • is not null - Property value is not null or not undefined
  • between - Property value is between two criteria values

Use in SQL-like Approach

  • u.firstName = "someValue"
  • u.firstName != "someValue"
  • i.quantity > 2
  • i.quantity >= 2
  • i.quantity < 2
  • i.quantity <= 2
  • a.address like "%Ave%"
  • a.address not like "%Ave%"
  • a.address is null
  • a.address is not null
  • orderDate between 2011-01-01,2011-02-01

Use in DSL Approach

  • cb.eq('u.firstName', 'someValue')
  • cb.neq('u.firstName', 'someValue')
  • cb.gt('i.quantity', 2)
  • cb.gte('i.quantity', 2)
  • cb.lt('i.quantity', 2)
  • cb.lte('i.quantity', 2)
  • cb.like('a.address', '%Ave%')
  • cb.notlike('a.address', '%Ave%')
  • cb.isnull('a.address')
  • cb.isnotnull('a.address')
  • cb.between('orderDate', '2011-01-01', '2011-02-01')
Clone this wiki locally