MySQLクエリの問題

WBOY
WBOYオリジナル
2016-06-20 12:45:24948ブラウズ

図に示すように、フィールド tid には、カンマで区切られた文字列の記事タグ ID が格納されています。ここで、「2」などのタグを介してすべての記事を検索したいとします。 tid フィールドに 2 を入力します。今度は SELECT * FROM `t_ms_article` WHERE `tid` IN (2) ステートメントを使用して、2 で始まる記事のみを検索しますが、'1,2,3' は検索しません
助けてください、私は初心者です


ディスカッションに返信 (解決策) )

SELECT * FROM `t_ms_article` WHERE `tid` LIKE ‘%2%’;

SELECT * FROM `t_ms_article` WHERE `tid` LIKE ‘%2%’;


いいえ、この場合、12 や 20 のようなタグも見つかります

SELECT * FROM `t_ms_article` WHERE find_in_set('2', `tid`)

SELECT * FROM `t_ms_article` WHERE CONCAT(',',`tid`,',') LIKE ‘%,2,%’;

SELECT * FROM `t_ms_article` WHERE find_in_set('2', `tid`)


ありがとう、一発で解決しました、膝を受け入れてください。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。