2011-02-09 2 views
1

Я хочу добавить категории на свой сайт - но с более сложной сортировкой.Статьи и категории - Эффективный способ

Допустим, у меня есть статья a. Теперь, я хочу находиться под основной категорией , но и на категории с тем его родителем б.

Я думал сделать это следующим образом: статья будет иметь основной категории поле, а также parent_ids

parent_ids бы каждая категория этот элемент принадлежит. my проблема: скажет, что у меня: parent_ids: | 1 | 5 | 2 | 7 |.

сейчас я в категории id - .

Как бы выглядел мой запрос?

select * from categories where parent_ids LIKE '%|7|%' 

эффективен? есть ли лучшая идея?

ответ

5

Никогда не храните несколько значений в одном столбце. Все значения столбцов в нормализованной базе данных должны быть атомарными (однозначными).

Отношения между articles и categories: много-ко многим. Это означает, что у вас должна быть отдельная таблица, такая как article_category (article_id, category_id), содержащая по одной строке для каждой категории, в которой находится каждая статья.

+0

Спасибо! что бы это сделать. :-) – WEBProject

+1

много-ко-многим? :) – Ronnis

+1

Очень глупо от меня :) –

Смежные вопросы