1

テーブルに格納されている数値のセットから特定の数値を含む行を見つける必要があります。WHERE IN()mysqlの関数を使用していますが、適切な形式に問題があります。

基本的に私は次のクエリを持っています:

SELECT id,category, text
FROM ws_cat
WHERE '11' IN (category) 

カテゴリフィールドはaVARCHARで、次のようになります。

id    category
1     11
2     12,11
3     1,13,9

したがって、この場合、ID1と2の行を見つける必要があります。残念ながら、それは機能せず、引用符が欠落しているためだと思いますがQUOTES()、形式を変更したり、形式を変更しcategoryたりするというアイデアもすべて機能し'12','11'ません。それが機能する限り、両方とも私にとって可能です...

4

1 に答える 1

1

Use the FIND_IN_SET function:

SELECT id, category, text
    FROM ws_cat
    WHERE FIND_IN_SET('11', category) <> 0;
于 2012-07-17T13:20:07.640 に答える