Я использую схему типа типа MySQL, описанную здесь для простой системы тегов. Я прочитал несколько альтернативных реализаций схемы тегов в 4 разных потоках SO, и это лучше всего подходит мне.
В коллекции записей есть теги "яблочный банановый апельсин" и "клубничный банановый лимон", и я пытаюсь найти эквивалентный оператор Elixir/SQLAlchemy для
SELECT * FROM table WHERE tags LIKE "%banana%";
Я не смог найти такой способ структурирования команды Class.query.filter/filter_by() и не вижу аналогичного метода в документации для любого модуля. Есть ли простой способ сделать это? Или я должен просто использовать raw SQL.
Дополнительный вопрос: Недостатком схемы MySQL является тот случай, когда я могу искать "% apple%", но возвратил "ананас". Есть ли способ на высоком уровне справиться с этим тестовым случаем? Или я должен просто включить ведущее пространство в каждом запросе?
n.B: Для тех, кто заботится, это мой первый опыт работы с базами данных, поэтому я могу игнорировать основные преимущества схемы, упомянутой в других потоках. Мое приложение предназначено для регистрации предложения или двух о завершенной задаче с столбцами [TaskID, Tags, Notes, StartTime, StopTime, TimeTaken], немного похожим на простой журнал. В основном для учебных целей. Я хочу, чтобы иметь возможность искать по отдельным тегам, чтобы узнать, сколько времени я трачу на задание.