SSブログ

IN と NOT IN を使って検索してみる [データベース]


★ 家での仕事がメインになってから、手帳は使わず卓上カレンダーだけ。
To-Do リストは ポスト・イットに書いて見えるとこにはり、済んだら消してます。
でもぐちゃぐちゃになりがちだし、終わってないタスクを書きうつすのも面倒だったり。
To-Do リストの管理ツールを使おうかな~と初めて思いました……。


前回までは検索条件の値が1つの場合をやってきたけど、
今回はそれが複数のケースです。

例えば年齢が30歳だけでなく、34歳と38歳の人も
同時に検索したい場合……そんなときは IN 句というのを使います↓

SELECT * FROM team1 WHERE age IN(30, 34, 38);

結果はこちら↓

佐藤 30 男
田中 38 女
渡辺 34 女

うまくはいったみたいだけど、指定した年齢順じゃなくって(30, 34, 38)、
レコードの順番なんですね(30, 38, 34)。

ここでふと思ったのが、昨日やったこれ↓

SELECT * FROM team1 age=29;

これに IN 句を使ってもできるの?って思ったんです、
こんなふうに↓

SELECT * FROM team1 WHERE age IN(29);

できました↓

高橋 29 男

あと、IN 句の逆の NOT IN 句も試しました↓

SELECT * FROM team1 WHERE age NOT IN(30, 34, 38);

結果はこちら↓

鈴木 42 男
高橋 29 男
伊藤 25 NULL
NULL 33 男

当然さっきの30歳・38歳・34歳の人達は出てこないけど
年齢が NULL歳の山田さんも出てきませんでした。

これも大丈夫だと思います♪


<ご案内>----------------------------------------------------------------

daihyakkaB.jpg

ネットビジネス大百科 10,000円

----------------------------------------------------------------<ご案内>



こちらのページを参考にさせていただきました↓
データベースとSQL - PHP入門 - ポンクソフト
ありがとうございました<(_ _)>




nice!(0)  コメント(0) 

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。