0

複数の値を持つカテゴリ列から category_id を取得しようとしたときに、いくつかの問題に直面しています。Like 句を使用しようとしましたが、機能しません。これは私が試したものです

SELECT * FROM txz43_contact_details WHERE catid LIKE %18%
4

2 に答える 2

3

FIND_IN_SET()を使用する

SELECT * FROM txz43_contact_details 
WHERE find_in_set(18, catid) > 0

しかし、実際には、1 つの列に複数の値を格納しないように、DB 構造を実際に変更する必要があります。

于 2013-09-18T10:36:00.120 に答える
2

FIND_IN_SET()を使用できます

SELECT * 
FROM txz43_contact_details 
WHERE FIND_IN_SET('18', catid) > 0

また

SELECT * 
FROM txz43_contact_details 
WHERE CONCAT(',', catid, ',') LIKE CONCAT('%,', '18', ',%')
于 2013-09-18T10:36:04.920 に答える