Accessでクエリを作成する際に、抽出条件の設定方法によって処理効率を格段に高めることができます。今回は、備忘録的に抽出条件の例を紹介します。
抽出条件とその結果
抽出条件 |
抽出の結果 |
>234 |
234 より大きいすべての数値を返します。 234 より小さいすべての数値を検索するには、<234 を使用します。 |
>=”Good” |
アルファベット順で Good 以降のすべてのレコードを返します。 |
Between #2/2/2023# And #12/1/2023# |
2023 年 2 月 2 日から 2023 年 12 月 1 日までの日付を返します。日付は「#」で括ることを忘れないようにします。 |
Not “愛知県” |
フィールドの内容が “愛知県” と完全に一致しないすべてのレコードを検索します。この抽出条件は、”愛知県” 及びそれ以外の文字 (“愛知県 (東海)” や “東海 (愛知県)” など) が含まれるレコードも返します。 |
Like “abc*” |
先頭の文字列が “abc” であるすべてのレコードを検索します。「abc」の後に1文字だけのあいまい検索をしたい場合は、「*」の代わりに「?」を用います。 |
Like “*abc” |
末尾の文字が”abc” であるすべてのレコードを検索します。「abc」の前、1文字だけのあいまい検索をしたい場合は、「*」の代わりに「?」を用います。 |
Not Like “abc*” |
先頭の文字列が “abc” を除くすべてのレコードを検索します。 |
Not Like “*abc” |
末尾の文字列が “abc” を除くすべてのレコードを検索します。 |
In(東京都,大阪府) |
Inを用いることで、リストとしての検索ができ、例の場合であれば”東京都” または “大阪府” を含むすべてのレコードを検索します。 |
#2/2/2020# |
2020 年 2 月 2 日のすべてのレコードを検索します。 データベースで ANSI-92 ワイルドカード文字セットが使用されている場合は、シャープ記号 (#) の代わりに単一引用符 (‘) で日付を囲みます。たとえば、(‘2/2/2020’)。 |
< Date() – 30 |
Date 関数を使用して、30 日前よりも古いすべての日付を返します。 |
Date() |
Date 関数を使用して、今日の日付を含むすべてのレコードを返します。 |
Between Date() And DateAdd(“d”, 6, Date()) |
Date 関数と DateAdd 関数を使用して、今日の日付から 6日前のすべてのレコードを返します。 |
Is Null |
Null 値 (空白または未定義の値) を含むすべてのレコードを返します。 |
Is Not Null |
値を含むすべてのレコードを返します。 |
“” |
長さがゼロの文字列を含むすべてのレコードを返します。 長さゼロの文字列は、必須フィールドに値を追加する必要があり、その値が不明な場合に使用します。 |
抽出条件では、特にあいまい検索を使う機会が多くあるかと思いますので、「Like」の使い方とワイルドカード「*」や「?」の使い方を上手く組み合わせることで、思いのままにデータ抽出ができるようになり、データ処理の効率も格段と上げられると思います。
今回は、短い記事となりますが備忘録的にAccessで用いる抽出条件を一覧としてまとめてみましたので、活用してみてください。
スポンサーリンク
コメント