2014-09-27 5 views
0

У меня есть два Таблица вызов категории таблица и продукт таблица
и один продукт может иметь несколько категорий, например: для 1,2,3, в странице категории любит, чтобы показать все продукты, связанные с CategoryIdПолучить Связанные категории продуктов

Я написал запросы Eg (выберите * из таблицы продуктов, где categoryid = 1), как я могу сопоставить определенную категорию с рубрикой категории ProductTable?

Ниже мой стол информации

Category Table 
id | categoryname 
1 | abc 
2 | pqr 
3 | xyz 

product Table 
id | productname | categoryid 
1 | abc   | 1,2,3 
+0

Вы бы этого не сделали. См. Нормализация – Strawberry

+0

Поиск в Интернете: «mysql search comma separated value» возвращает полезные ссылки. Однако, пожалуйста, как @Strawberry предлагает, и реструктурировать ваши таблицы, это будет намного проще позже. –

ответ

0

использовать как оператор

SELECT * FROM product where categoryid LIKE '%1%'; 

или вы можете использовать регулярные выражения в вашем SQL.

+0

, если в нем было более одного значения с «1», то есть «21» или «213» и т. Д., Тогда ваш запрос будет соответствовать. Я предлагаю вам как-то включить «,» (запятую) в «подобном» тесте. Это действительно касается соответствия точных значений, разделенных запятой. Укажите регулярное выражение, которое должно использоваться. –