Операторы условий в методах
В условиях можно использовать различные операторы:
- Сравнения: =, <, >, <=, >=, <>, !=
- Строковые: like, not like
- Множества: IN, NOT IN
| Оператор | Описание | Тип переменной | Пример |
| = | Равно | string, int | ['id', '=', 100] |
| < | Меньше | int, float | ['price', '<', 1000] |
| > | Больше | int, float | ['age', '>', 18] |
| <= | Меньше или равно | int, float | ['quantity', '<=', 50] |
| >= | Больше или равно | int, float | ['rating', '>=', 4.5] |
| <> или != | Не равно | string, int | ['status', '<>', 'closed'] |
| like | Соответствует шаблону | string | ['name', 'like', '%John%'] |
| not like | Не соответствует шаблону | string | ['email', 'not like', '%@spam.com'] |
| ilike | Соответствует шаблону (без учета регистра) | string | ['title', 'ilike', '%book%'] |
| IN | Содержится в списке | array | ['id', 'IN', [1, 2, 3]] |
| NOT IN | Не содержится в списке | array | ['status', 'NOT IN', ['closed', 'deleted']] |
| is | Равно (для null) | null | ['manager_id', 'is', null] |
| is not | Не равно (для null) | null | ['end_date', 'is not', null] |
| regexp | Соответствует регулярному выражению | string | ['phone', 'regexp', '^\\+7'] |
| not regexp | Не соответствует регулярному выражению | string | ['username', 'not regexp', '[0-9]'] |
Примечание! Некоторые операторы могут быть недоступны или работать иначе.
Пример использования операторов:
let where = [
['id', '>', 1000],
['name', 'like', '%Иван%'],
['channels.code', 'IN', ['telegram', 'whatsapp']]
]
Нет комментариев