FC2ブログ

MYSQL のメモ (Like で検索)

今回は。LIKE で検索するときのメモ

select * from my_items where keyword like '%甘い%';

このように %で囲むと一致するキーワードで検索します

select * from my_items where keyword like '%甘い';
だと、最初に
甘いとなっている部分しか検索できないので注意

あと、AND検索で
select * from my_items where price>=50 AND price<150;
ならOK

select * from my_items where price=>50 AND price<150;
だとNG

ちょっとした違いだけど、はまりました

あと
ちょっと複雑なのとして
SELECT * FROM `my_items` WHERE (id=1 OR id=3) AND price<150 AND keyword LIKE '%甘い%';

これは
IDが1または3
150円未満で
甘いが含まれる商品

と言う意味です

ちょっと複雑に見えますが Linux でシェルスクリプトとか
コマンドのパイプを使っていろいろとやっている人には
見慣れた光景かも....


注意事項として OR と AND を混ぜるときには
()で囲わないと、全然違う意味になるようです
SELECT * FROM `my_items` WHERE id=1 OR id=3 AND price<150 AND keyword LIKE '%甘い%';
とすると
id=1
OR
id=3 AND price<150 AND keyword LIKE '%甘い%'
という意味になります

もし、これの意味を id=1 もしくは id=3 としたいのなら
SELECT * FROM `my_items` WHERE (id=1 OR id=3) AND price<150 AND keyword LIKE '%甘い%';
というように
()で囲むようにします
スポンサーサイト



テーマ : プログラミング
ジャンル : コンピュータ

コメント

非公開コメント

最新記事
検索フォーム
GREEハコニワ攻略サイト
リンク
カテゴリ
月別アーカイブ
フリーエリア
最新記事
FXプライムレート
最新コメント
最新トラックバック