Здравствуйте По работе вникаю в новый проект, решаю накопившиеся баги. Решая один из них, увидел такую часть запроса: Код (Text): `post`.`tags` LIKE 'пресс-релиз,%' OR `post`.`tags` LIKE '%, пресс-релиз,%' OR `post`.`tags` LIKE '%,пресс-релиз' OR `post`.`tags` LIKE 'пресс-релиз' Мало того, что такой запрос некорректен - например он не находит строку "Болгария, статистика, пресс-релиз", возникает вопрос - а не лучше ли просто написать: Код (Text): `post`.`tags` LIKE '%пресс-релиз%' ? P.S. под "пресс-релиз", разумеется, подразумевается любое слово (тег). P.P.S. Замерял выполнение запросов в phpMyAdmin, второй выполняется раза в два быстрее, но там цифры очень сильно прыгают, не знаю на сколько корректно так заменять скорость выполнения запросов.
По всей видимости так сделано для полного совпадения тега. У вас же может быть тег "пресс-релиз президента", "прикладная статистика", "вычислительная статистика" и чисто по LIKE '%words%' вы будете подхватывать частичные вхождения, а не полные. P.S. По человечески, лучше и производительней вариант с хранением тегов отдельно, с отношением к другим сущностям many-to-many.