Есть таблица.
Запрос: красивый красный На выходе мы должны получить catalog_id: 1 - (полное соответствие), 4 - (красный)
Т.е суть в том, что сперва мы должны выбрать из таблицы все соответствия ключевых слов, потом мы получаем там где совпадает допустим 2 ключевых слова, а потом где одно.
Запрос может состоять из 10 ключевых, данных в таблице много, но как сделать релеватность в данном случае я никак не пойму.
Сумбурно написал, но суть в том: на входе n кол-во ключевых слов. Нужно сперва отобразить все найденные, потом в порядке убывания по кол-ву совпадений.
Если не ошибаюсь, то должно работать так
SELECT
catalog_id,
COUNT(*)
FROM
mytable
WHERE
keyword IN ('красивый', 'красный')
GROUP BY
catalog_id
ORDER BY
2 DESC
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости