So-net無料ブログ作成
検索選択

AccessクエリとSQLの関係 抽出条件(または) [Accessクエリ]



さて、Accessクエリの続きである。

今回は、前回に続いて、抽出条件である。
抽出条件のひとつ下に、「または」っていうのがある。以下、見出しに何も書かれていない入力欄が存在するが、こいつらの効果を調べるのである。

抽出条件または

さて、抽出条件の入力欄には、抽出条件の式を書くことができた。そのひとつ下にある「または」の部分にも抽出条件を書き込むことができる。
どちらかの抽出条件に合致するレコードが抽出されることになる。

以下のように、2と3を入力すると
b列が2であるレコード「または」b列が3であるレコードが抽出される。

Access抽出条件2または32017-05-29 (14).png

簡単にいえば、条件式を複数書くことができるわけです。
で、それらの条件式のうちどれかに合致すれば抽出対象となるわけです。

SQLとの対比 OR

では、これをSQLビューで表示させてみよう。

Access抽出条件OR2017-05-29 (14).png

これまた、括弧が多いので、取り除いてみると

WHERE foo.b = 2 OR foo.b = 3

となる。
foo.b = 2 が「b列が2であるレコード」という条件。
foo.b = 3 が「b列が3であるレコード」という条件。
これらのふたつの条件式が、OR(オア)でつながれている。

このORは、左右の条件式のうち、どちらか一方の条件が成り立っていれば、全体として真を戻す演算子。両方の条件が成り立っている場合でも真になる。唯一、偽となるのは、両方の条件が成り立っていない場合のみとなる。
ORは英語であるが、日本語に訳すと「または」である。

ここまでのまとめ

OR
 「または」に入力すると、ORで連結された条件式となる。


抽出条件にORを書く

またはの入力欄に条件式を書いたが、これをOrを使って、抽出条件のところにまとめて書いてもよい。

Access抽出条件にOrを書く2017-05-29 (17).png

実行結果やSQLは「または」に3を書いた場合と同じになるので、省略。

この方法なら、Or以外の論理演算子で条件を連結することも可能になる。
論理演算子には、以下のものが存在する(代表的なもののみ)。

論理演算子
 OR  または
 AND かつ
 IN  いずれか

ORについては、これまで見てきた通りであるが、AND(アンド)については少々説明が必要かも。
ANDもORと同様に、ふたつの条件式を連結するものである。ORが片方の条件式が成り立っていればよかったのに対して、ANDでは、両方の条件式が成り立っていなければ、全体で真にならない。

なので、「2 Or 3」をそのまま「2 And 3」としてもうまくいかないであろう。

どうしてかといえば、b列の値が2であり、かつ、同時にb列の値が3であるレコードなんて存在しないからである。

しかしながら、文法としては正しいので、Accessは律儀にそういったレコードを検索する。探しても存在しないはずなんだけどね。

ではANDの意味がないじゃない、と思われるかも知れない。

まぁ、ひとつの列の抽出条件に等価である条件同士でAND書いても「意味ない」です。

複数の列に抽出条件を書く

a列のところにも抽出条件を書いてみよう。
これで、SQLビューにしてみると

Access抽出条件AND2017-05-29 (18).png

ほほう。「a列が"二"」という条件と「b列が2」という条件のふたつがANDで連結されている。
これなら意味がある。どちらの条件も満たしているレコードが抽出されるのである。

ここまでのまとめ

AND
 デザインビューの各列に抽出条件を書くと、ANDで連結された条件式となる。

範囲指定の抽出条件

ひとつの列で抽出条件にANDを書いてもあまり意味がない、といったが、範囲指定で条件を書くときにはAndを使って書くことが多い。ANDを使って意味がないのは等しいかどうかの条件式を連結する場合である。
例えば、b列の値が、1~3の範囲にある、といった条件式なら以下のように書くことができる。

 >=1 And <=3
  または
 Between 1 And 3

今回はここまで。
詳しくは、SQLポケリのWHERE句や論理演算子のところを参照して欲しいのだ。


[改訂第4版]SQLポケットリファレンス

[改訂第4版]SQLポケットリファレンス

  • 作者: 朝井 淳
  • 出版社/メーカー: 技術評論社
  • 発売日: 2017/02/18
  • メディア: 単行本(ソフトカバー)



関連記事
AccessクエリとSQLの関係 デザインビューとSQLビュー
AccessクエリとSQLの関係 フィールド
AccessクエリとSQLの関係 フィールドに式を書く
AccessクエリとSQLの関係 並び替え
AccessクエリとSQLの関係 抽出条件
AccessクエリとSQLの関係 抽出条件(または)
AccessクエリとSQLの関係 抽出条件(INとLIKE)
AccessクエリとSQLの関係 抽出条件(表示のチェックボックス)




サイト内を検索


タグ:access SQL
nice!(0)  コメント(0) 
共通テーマ:携帯コンテンツ

AccessクエリとSQLの関係 抽出条件 [Accessクエリ]



さて、Accessクエリの続きである。

前回は、並び替えをやった、今回は、ひとつ飛ばして、抽出条件をやってみる。
多分、クエリで一番お世話になる機能である。

抽出条件

さて、抽出条件の入力欄では、ドロップダウンは表示されない。これは、なんでも入力できることを意味する。抽出条件という言葉の意味通り、抽出するための条件を書き込む欄になる。

まずは、簡単な抽出からやってみることにする。

単純一致

抽出という処理は、レコードを抽出する作業になる。抽出条件は、抽出したいレコードの条件。
抽出条件に単に値を入力すると、その値と一致するレコードが抽出される。
難しくはない。
fooテーブルの全レコードが以下のように存在していたとする。
b列の抽出条件に2を書き込んでクエリを実行すると

Access抽出条件を設定2017-05-29 (8).png

b列が2であるレコードだけが抽出された。
2を1に変更すれば、1であるレコードが抽出されるはず。

SQLとの対比 WHERE

では、これをSQLビューで表示させてみよう。

Access抽出条件を設定SQL2017-05-29 (8).png

やたら括弧が付いて読みにくいが、WHERE(ホエア)が追加になっていることがわかる。括弧を取り除いてみると、以下のようになっている。

WHERE foo.b = 2

SELECT命令のWHERE句では、レコードを抽出するための条件式を書くところなのである。テーブルfooのb列が2と一致するレコードだけを抽出してきなさい、という命令になっている。

「foo.b = 2」は、式である。foo.bがテーブルfooのb列であることを意味している。2はそのまま数値の2。=が演算子で「等しい」かどうかを計算してくれるもの。デザインビューの入力欄には=は入力していないが、計算方法を入力しなかった場合、デフォルトで=が演算子として採用される。

ここまでのまとめ

WHERE
 抽出条件を指定するとSELECT命令に追加される

foo.b = 2
 WHEREに続けて、レコードの抽出条件式を指定する

=
 等しいかどうかを計算する演算子


比較演算

単純にb列の値が2と一致するレコードだけを抽出できた。演算子を指定することで、計算方法を変更することができる。比較演算子を使うことで、指定した値よりも大きいものだけ、といった抽出が可能になる。比較演算子には以下のものがある。

 =  等しい
 >  大きい
 <  小さい
 >= 以上
 <= 以下
 <> 等しくない

このブログは、HTMLで書いているので、記号を全角文字で書いている。実際のクエリには半角で演算子を書かないと演算子とはみなされないので注意!

b列が2以上であるレコードを抽出してみよう。

Access抽出条件2以上2017-05-29 (11).png

ちゃんとできました。
今回はここまで。
詳しくは、SQLポケリのWHERE句や比較演算子のところを参照して欲しいのだ。


[改訂第4版]SQLポケットリファレンス

[改訂第4版]SQLポケットリファレンス

  • 作者: 朝井 淳
  • 出版社/メーカー: 技術評論社
  • 発売日: 2017/02/18
  • メディア: 単行本(ソフトカバー)



関連記事
AccessクエリとSQLの関係 デザインビューとSQLビュー
AccessクエリとSQLの関係 フィールド
AccessクエリとSQLの関係 フィールドに式を書く
AccessクエリとSQLの関係 並び替え
AccessクエリとSQLの関係 抽出条件
AccessクエリとSQLの関係 抽出条件(または)
AccessクエリとSQLの関係 抽出条件(INとLIKE)
AccessクエリとSQLの関係 抽出条件(表示のチェックボックス)





サイト内を検索


nice!(0)  コメント(0) 
共通テーマ:携帯コンテンツ

AREarthroidPro ARで地球を表示するアプリ

Copyright Atsushi Asai Google+朝井淳
[改訂第4版]SQLポケットリファレンス

[改訂第4版]SQLポケットリファレンス

  • 作者: 朝井 淳
  • 出版社/メーカー: 技術評論社
  • 発売日: 2017/02/18
  • メディア: 単行本(ソフトカバー)

[データベースの気持ちがわかる]SQLはじめの一歩 (WEB+DB PRESS plus)

[データベースの気持ちがわかる]SQLはじめの一歩 (WEB+DB PRESS plus)

  • 作者: 朝井 淳
  • 出版社/メーカー: 技術評論社
  • 発売日: 2015/03/03
  • メディア: 単行本(ソフトカバー)
C言語 ポインタが理解できない理由 [改訂新版] (プログラミングの教科書)

C言語 ポインタが理解できない理由 [改訂新版] (プログラミングの教科書)

  • 作者: 朝井 淳
  • 出版社/メーカー: 技術評論社
  • 発売日: 2011/04/08
  • メディア: 単行本(ソフトカバー)

かんたんAndroidアプリ作成入門 (プログラミングの教科書)

かんたんAndroidアプリ作成入門 (プログラミングの教科書)

  • 作者: 朝井 淳
  • 出版社/メーカー: 技術評論社
  • 発売日: 2013/04/16
  • メディア: 単行本(ソフトカバー)