1

さまざまなタグとカテゴリがたくさんある CMS があります。私は明らかに各カテゴリを一意の ID として使用し、次のようにデータベースに保存します。

cats -> 2,15,115
tags -> 13,33,113

これは簡単な例です。

クエリで使用する GET 変数 $cat によって関連コンテンツを表示したいときに問題が発生します。

WHERE cats LIKE '%$cat%' 

$cat = '5' の場合、5、15、55、115 などを返します。「5」だけに一致する必要があり、他には何もありません!

本当に、本当に単純なものが欠けていると確信しています。

編集: find_in_set は非常にうまく機能します。ただし、私のもう 1 つの課題は、$GET 変数が次のようになる場合があることです。$cat = 150,181

では、変数 $cat を使用して、これらの一致が 1 つだけあるかどうかを確認するにはどうすればよいでしょうか? クエリに対して 150 または 181 を一致させたいですか?

4

2 に答える 2

2

FIND_IN_SET()catsにこれらの値があるため、使用できます2,15,115

SELECT * FROM tableName WHERE FIND_IN_SET('5', cats) > 0
于 2013-07-30T16:19:28.290 に答える