sdevalex
@sdevalex

Поиск по отношению HasMany

Есть таблица пользователей users и таблицами со свойствами пользователя (user_id, property_id, value)… Можно ли одним запросом выбрать пользователей с несколькими заданными свойствами?

UP. Можно выбрать свойства по параметрам, сгруппировать их по user_id и выбрать группы, где количество строк в группах равно количеству свойств для поиска. Но у меня есть ещё одна таблица (почти такая же, как и со свойсвами) и по ней нужно также делать поиск.

UP. Может сделать виртуальную таблицу, в которой склеить три других? с полями типа «property_#{id}»… или это уже слишком?

UP. Пока нашел решения делать несколько JOIN (в зависимости от количесва искомых свойств). Работает, но 6-8 join + 4 join из других таблиц не многовато?
  • Вопрос задан
  • 2655 просмотров
Пригласить эксперта
Ответы на вопрос 2
Melanitsky
@Melanitsky
Мне разобраться с поиском по свойствам помогла статья. Обратите внимание на сами запросы
Ответ написан
Комментировать
michaelarshinov
@michaelarshinov
виртуальная таблица
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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