RSQL operators
Background
The MOLGENIS REST query API makes use of RSQL. RSQL is a query language for parametrized filtering of entries in RESTful APIs. It’s based on FIQL (Feed Item Query Language), that was originally specified by Mark Nottingham as a language for querying Atom feeds. However the simplicity of RSQL and its capability to express complex queries in a compact and HTTP URI-friendly way makes it a good candidate for becoming a generic query language for searching REST endpoints.
Supported RSQL operators
MOLGENIS supports the following operators:
Operator | Example | Description |
---|---|---|
== |
/api/v2/myTable?q=columnA==queryValue |
Performs an equals query. Returns all rows from myTable where values in columnA exactly equal queryValue |
=q= |
/api/v2/myTable?q=columnA=q=queryValue |
Performs a search query. Returns all rows from myTable where values in columnA contain queryValue |
=like= |
/api/v2/myTable?q=columnA=like=queryValue |
Performs a like query. Returns all rows from myTable where values in columnA are like queryValue |
=in= |
/api/v2/myTable?q=columnA=in=(valueA, valueB) |
Performs an in query. Returns all rows from myTable where columnA contains valueA OR valueB |
!= |
/api/v2/myTable?q=columnA!=queryValue |
Performs a not equals query. Returns all rows from myTable where values in columnA do not equal queryValue |
=notlike= |
/api/v2/myTable?q=columnA=notlike=queryValue |
Performs a not like query. Returns all rows from myTable where values in columnA are not like queryValue |
< & =lt= |
/api/v2/myTable?q=columnA<queryValue , /api/v2/myTable?q=columnA=lt=queryValue |
Performs a lesser than query. Returns all rows from myTable where values in columnA are lesser than queryValue |
=le= & <= |
/api/v2/myTable?q=columnA<=queryValue , /api/v2/myTable?q=columnA=le=queryValue |
Performs a lesser than or equal to query. Returns all rows from myTable where values in columnA are lesser than or equal to queryValue |
< & =gt= |
/api/v2/myTable?q=columnA>queryValue , /api/v2/myTable?q=columnA=gt=queryValue |
Performs a greater than query. Returns all rows from myTable where values in columnA are greater than queryValue |
>= & =ge= |
/api/v2/myTable?q=columnA>=queryValue , /api/v2/myTable?q=columnA=ge=queryValue |
Performs a equal to or greater than query. Returns all rows from myTable where values in columnA are equal to or greater than queryValue |
=rng= |
/api/v2/myTable?q=columnA=rng=(fromValue,toValue) |
Performs a from to query. Returns all rows from myTable where values in columnA are equal or greater than the fromValue, and lesser than or equal to the toValue |
=should= |
N/A | Not supported |
=dismax= |
N/A | Not supported |
=fuzzy= |
N/A | Not supported |