Skip to content

Поддержка функций в Where-условиях #129

@MadSchemas

Description

@MadSchemas

Начиная с 5.12.0 у ядра rx появилась поддержка функций в Where-условиях. На текущий момент это функции now и flat_array_len. Документация здесь. Значения функций можно сравнивать с литералами, полями и subquery (в перспективе можно будет сравнивать с произвольным выражением).

В связи с этим в Go появился интерфейс WhereExpressions, позволяющий передавать произвольные сущности в левую и правую части Where (валидация совместимости этих сущностей происходит на стороне ядра). Выглядит это вот так. Доступные функции определены здесь, а реализации интерфейса IExpression - здесь (Field - поле, Values - литералы, Subquery - вложенный запрос).

Также для flat_array_len есть отдельная обёртка под базовый случай фильтрации (функция + литерал).

Со стороны java-коннектора хотелось бы тоже поддержать возможность работы с функциями (как минимум, возможность сравнить в Where значение функции с полем, литералом или подзапросом)

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions