Имхо намного-намного затратней, чем поручить это дело mysql… можно даже еще немного убыстрить запрос, как мне кажется:
SELECT topic_id,
GROUP_CONCAT(topic_tag_text order by topic_tag_text) val
FROM prefix_topic_tag where topic_tag_text in ('tag1','tag2','tag3')
GROUP BY topic_id having val="tag1,tag2,tag3"
чтобы исключить операции объединения и сравнения для топиков у которых нет ни одного нужного тега. Поле topic_tag_text индексируемое, так что все должно шустро работать.
чтобы исключить операции объединения и сравнения для топиков у которых нет ни одного нужного тега. Поле topic_tag_text индексируемое, так что все должно шустро работать.
При настройке charset ставить utf8
меняем на