フィールド内の条件を満たす複数の値をフィルターするにはどのようにクエリを実行すればよいですか?
これは、cateid=2 または cateid=4 または cateid=8 のテーブルからのクエリです。他の方法はありますか?
cateid=2,4,8,という文字を取得しましたが、cateid=2 の値の長さが固定されていない可能性があります。条件を満たす値を簡単に抽出する方法はありますか? ,4,8, 23,44," cateid="2," の場合もあります。
ありがとうございます...
-----解決策--- - ----------------
select * from table where cateid in(2,4,8)
------解決策---------
クエリの条件内で使用しますが、最後に使用します条件 (, カンマ) は削除する必要があります
------解決策---------
select * from table where cate_id in (2,4,8) <br><font color="#e78608">------解決策-----</font><br>を使用する方が効率的であるか、より簡単です。 <br>
に書き込む $a=explode(',',"2,4,8,23,44,"); $w = 配列(); foreach($a as $s){ if(intval($s)) $w[]='cate_id='.intval($s); } if(カウント($w)) echo "select * from table where ".implode(' または ',$w);