Was this helpful?

The following operators and data types are supported by the SQL-like query language in API BaaS.

Equality operators

Purpose Operator
Less than

'<' or 'lt'

Less than equal

'<=' or 'lte'


'=' or 'eq'

Greater than equal

'>=' or 'gte'

Greater than

'>' or 'gt'

Not equal

NOT <some_expression>

Logical operators

Purpose Operator
Intersection of results


Union of results


Subtraction of results


Data types

As you develop queries, remember that entity properties each conform to a particular data type. For example, in the default entity User, the name property is stored as a string, the created date as a long, and metadata is stored as a JSON object. Your queries must be data type-aware to ensure that query results are as you expect them to be.

For example, if you create an entity with a price property with a value of 100.00, querying for 100 will return no results, since the API expected a decimal-delimited float value in your query.

For a list of property data types for each default entities, see Default Data Entities.

Data Type Examples
string 'value', unicode '\uFFFF', octal '\0707'

Timestamps are typically stored as long values.

10.1, -10.1, 10e10, 10e-10, 10E10, 10E-10

Your query must be specific about the value you're looking for, down to the value (if any) after the decimal point.

true | false

For a JSON object like this one:

 "items": [
   "name": "rocks"
   "name": "boats"

you can use dot notation to reach property values in the object:

/mycollection/thing?ql="select * where items.name = 'rocks'"

Objects are often used to contain entity metadata, such as the activities associated with a user, the users associated with a role, and so on.

Help or comments?

  • Something's not working: See Apigee Support
  • Something's wrong with the docs: Click Send Feedback in the lower right.
    (Incorrect? Unclear? Broken link? Typo?)