Что я имею в виду, говоря, что это истинный список «связанных по тегам»?
Предположим, что статья имеет 3 тега: A, B, C. Настоящими «связанными по тегам» статьями для этого элемента будут статьи, сначала имеющие теги A, B, C, затем (A, B), (A, C), ( Б, В) и др.
таблица: теги
tag_id
tag_title
tag_nicetitle
таблица: теги2статьи
article_id
tag_id
Используя эту структуру таблиц, слишком сложно вычислить истинные «связанные тегами».
Мы можем добавить еще одну таблицу, содержащую article_id, и это будет md5(A,B,C). Перед хэшированием мы должны отсортировать теги по алфавиту.
таблица: article_tags_hashed
id
article_id
md5
count
Эта таблица поможет нам найти статьи, содержащие точный набор тегов (A,B,C), но не поможет найти статьи, содержащие только (A, B), (A, C), (B, C)
Какова наилучшая практика?
PS: Извините за мой английский, он довольно плохой.