Фильтрация данных

Фильтрация данных осуществляется при помощи добавления объекта filter.

Пример

{
"action":"pd_users",
"method":"Query",
"data":[
{
"filter":[
{
"property":"c_firstname",
"value":"Яковлев",
"operator":"like"
}
],

"page":1,
"start":0,
"limit":25
}
],
"type":"rpc",
"tid":21
}

Объект фильтра состоит из:

  • property: string – наименование колонки
  • value: any – значение для фильтрации
  • operator: string – оператор применяемый при фильтрации. Может не указываться, тогда требуется подразумевать, что operator равен =.

Значения передаваемые в параметре operator:

  • < или lt
  • <= или lte
  • = или eq
  • >= или gte
  • > или gt
  • <> или ne
  • in
  • notin
  • isnot
  • is
  • like
  • ilike

При применения множественной фильтрации в массив filter требуется передавать несколько значений. В этом случаи применять логический оператор AND.

{
"action":"pd_users",
"method":"Query",
"data":[
{
"filter":[
{
"property":"c_firstname",
"value":"Яковлев",
"operator":"like"
},
{
"property":"c_tel",
"value": "112"
}
],
"page":1,
"start":0,
"limit":25
}
],
"type":"rpc",
"tid":21
}

Пример применения логического оператора OR указан тут.

Фильтрация по колонке JSonb
"filter": [{"property":"jb_data.b_free", "value": "true"}]
== или с приведением ==
"filter": [{"property":"jb_data.b_free::boolean", "value": true}]

Print Friendly, PDF & Email