2016-05-25 36 views
-2

我有一些類別列表。並有一些帖子有多個類別。 如..檢索在相應的列中有逗號分隔值的行

PHP是類別,,第一柱具有PHP,JavaScript中,WordPress的類別和所述第二柱具有PHP,MySQL的類別中的一列。

現在,當我點擊PHP類別,那個時候所有這些都PHP類別的職位將被檢索。

請任何想法如何檢索基於一個類別的所有帖子,如果那些在一個列中有多個類別。

+0

你不能用'column LIKE'%php%''使用SQL查詢嗎? –

+0

@ShaunakShukla關於'C'' C#'''C++''怎麼辦? – sagi

+0

你在列中有逗號分隔值嗎? –

回答

0

你需要的是FIND_IN_SET() MySQL的功能。

SELECT * FROM TableName WHERE FIND_IN_SET('PHP', category_column); 

FIND_IN_SET()回報category_columnPHP位置,所以用在WHERE條款是適用於所有的true除了0,串時未找到其返回。

作爲一個免責聲明,我想提一下,看起來,你的數據庫設計不好。你不應該把多個值放在一個字段中。稍後您可能會在開發更多功能時遇到麻煩。

+0

感謝您的建議,您的代碼正在工作。我是PHP和mysqli的新手,所以這是我糟糕的設計的錯。好的,我會盡力做得更好。 –

0

你可以使用FIND_IN_SET,像..

SELECT * FROM table_name 
WHERE FIND_IN_SET('php',`your_colum_name_containing_values`);