@x_shader
Oracle & Coffee

Как хранить комбинации логических операторов в таблице?

Приветствую.

Есть какие-то паттерны/best practice для эффективного хранения правил, состоящих из комбинаций логических операторов?
Задача - динамически строить фильтры для отбора записей в таблице, подходящих под правило. А также иметь возможность редактировать правила.
Предпочтительно правила хранить в таблице.

Пример правила:
Rule1: (feature1 = 3 AND feature2 > 5) OR feature3 like '*.google.com'

Картинка с примером настройки правила в интерфейсе:
GUID-A7F33267-8DED-4E56-9635-80EB8B05AC9
Пытался найти идеи в гугле, но дальше таблиц истинности и карт Карно не продвинулся.
Заранее благодарю также и за правильные формулировки для гугла.
  • Вопрос задан
  • 97 просмотров
Пригласить эксперта
Ответы на вопрос 2
inoise
@inoise
Solution Architect, AWS Certified, Serverless
Как ни удивительно, но проще всего такие вещи хранить в SQL, KQL (Kusto Query Language), ну или аналоги:
- чранить строкой
- при получении парсить (готовыми библиотеками) и рисовать интерфейс
- при сохранении сохранять как Query
- PROFIT!
Ответ написан
Комментировать
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Храните сами запросы к БД как строки.
Зачем велосипед изобретать?!
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы