MH Query Language
Структура немного схожа с синтаксисом SQL. В основном нужно просто ссылаться на поля модели, а затем применять сравнение, логические операторы и скобки.
- Поля моделей: указывается просто название поля без дополнительных оберток. Чтобы обращаться к вложенным данным, нужно использовать символ точки
.
. Пример:documents.status
; - Для доступа к даннын внутри JSON полей, нужно также использовать символ точки
.
. Пример:documents.data.invoice_number
(у поля data в документах формат JSON); - Строки должны быть обернуты в двойные кавычки. Одинарные кавычки не поддерживаются. Для экранизации кавычек в JSON, нужно использовать символ
\
. Пример:documents.status = \"completed\"
; - Символы для булевых значение и null:
True
,False
,None
. Данные символы можно использовать только с оператором сравнения=
. - Логические операторы:
and
,or
; - Операторы сравнения:
=
,!=
,<
,<=
,>
,>=
. Возможно использование операторов~
и!~
для проверки на содержание подстроки; - Для проверки наличия поля в списке, можно использовать операторы
in
,not in
. Пример:documents.status in ("completed", "ready")
.