2

以下の写真のように、データベースの「」列に値が格納されています。

ここに画像の説明を入力してください

ここで、3番目の位置に、Italian、Pizzeria(Pizza)としての値があることに気付くと、COMMA(、)LIKE Italian、Pizzeria(Pizza)を含むことができる値がさらにある可能性があります。下の写真では、

ここで、php(select * from tablename)を介してすべての値をフェッチしたいのですが、値にCOMMAが含まれている場合は、その値を除外したいのですが、列の内容をフィルタリングする方法はありますか?カンマのない値のみを選択したいのですが、よろしくお願いします。私の知る限りでは、pregmatchが行われるか、配列フィルターが役立ちます。

4

3 に答える 3

1

NOT LIKE述語を使用します。

select *
from tablename
WHERE merchant_cuisine NOT LIKE '%,%';
于 2013-03-21T13:14:21.393 に答える
1

これはMySQL内で実行できます。

select * from tablename
where locate(',', merchant_cuisine) = 0

参照:LOCATE()

于 2013-03-21T13:15:55.853 に答える
1

質問から理解したように、列にコンマ記号が含まれていない行のみをフェッチする必要がありmerchant_cuisineます。次に、このクエリを試してください。SELECT * FROM tablename WHERE merchant_cuisine NOT LIKE '%,%'

于 2013-03-21T13:17:57.170 に答える