Логика сложных SQL запросов, вычислений и выдачи

Прошу помощи, чтобы разобраться в работе баз данных. Все стало ясно, а вот со сложными запросами затык. Терминами и соответствующими заумными словами не владею, поэтому попроще пожалуйста. Например, такие данные:

ФИЛЬТРЫ (три таблицы)
- критерий 1
- критерий 2
- критерий 3

ТОВАРЫ (таблица)

(Связующие таблицы)
МкМ Критерий 1 + Товар Х + Рейтинг
МкМ Критерий 2 + Товар Х + Рейтинг
МкМ Критерий 3 + Товар Х + Рейтинг

ЗАПРОС 
Критерий 1 = Х
Критерий 2 = Y
Критерий 3 = Z

ЗАДАЧА
Выбрать все товары, которые соответствуют каждому из критериев (критерий 1 = товар 3, 4, 5, 6 и т.д.)
Отсортировать по соответствию (товары, в которых есть все три критерия выше)
Подсчитать рейтинг по каждому товару (из таблиц МкМ)
Отсортировать по рейтингу (собственно можно упустить соответствие, т.к. рейтинг будет выше у тех, у кого больше совпадает критериев)

Как это можно сделать? начал изучать вьюхи, но пока ничего не понятно.


Ответы (0 шт):