Advanced Filters
By default, all conditions within a single filter are combined using the "AND" operator. An example for a filter can be:
{
"filter": {
"_id": {
"like": "877"
},
"sub_type": {
"not": 30
}
},
"limit": 10,
"page": 0
}
This filter will locate only result where the "_id" is like 877 AND the "sub_type" is not 30.
For more complex filtering, BioT offers advanced filters that combine basic filters using logical operators.
Create an advanced filter by adding a second filter and joining it with one of the following logical operators:
- $AND
- $OR
- $NOT
You can use as many logical operators as you want in a filter! No limits here.
Examples
Locate results where the "_id" is like 877 OR the "sub_type" is not 30.
{
"filter": {
"_id": {
"like": "877"
},
"$OR":{
"filter": {
"sub_type": {
"not": 30
}
}
}
},
"limit": 10,
"page": 0
}
Locate results with creation time after "2000-01-01T00:00:00.000Z" OR results that have a "service_state" NULL AND name like "Demo_Device" AND "address" equals to "USA"
{
"filter": {
"creationTime": {
"from": "2000-01-01T00:00:00.000Z"
},
"$OR": {
"filter": {
"service_state": {
"isNull": true
},
"$AND": {
"filter": {
"name": {
"like": "Demo_Device"
},
"address": {
"eq": "USA"
}
}
}
}
}
},
"limit": 10,
"page": 0
}
Updated 8 months ago