テキスト値を抽出条件として使用する式の例

フィールド 説明
都道府県 "北海道" 北海道にある会社が表示されます。
都道府県 "北海道" Or "福岡県" Or 演算子を使用すると、北海道または福岡県にある会社が表示されます。
出荷日 Between #95/10/5# And #95/10/10# Between...And 演算子を使用すると、1995 年 10 月 5 日から 1995 年 10 月 10 日までの期間に出荷した受注の内容が表示されます。
出荷日 =#95/2/2# 1995 年 2 月 2 日に出荷した受注の内容が表示されます。
出荷先都道府県 In("佐賀県", "愛知県") In 演算子を使用すると、佐賀県または愛知県へ出荷した受注の内容が表示されます。
出荷先都道府県 Not "埼玉県" Not 演算子を使用すると、埼玉県以外の都道府県へ出荷した受注の内容が表示されます。
得意先名 Like "山*" 社名が "山" で始まる得意先が表示されます。
フリガナ >="ハ" 社名が "ハ" から "ワ" の間にある会社が表示されます。
受注コード Right([受注コード], 2)="99" Right 関数を使用すると、受注コードの末尾が 99 の受注の内容が表示されます。
得意先名 Len([得意先名])>Val(30)

抽出条件の欄に、
Len([得意先名])>30
と一行で記述すると、30が文字データになって、比較できません。
違和感が有りますが、Val が必要です。
Access 2007では、修正されています。
Len 関数と Val 関数を使用すると、社名が 31 文字以上の得意先に関する受注の内容が表示されます。

likeになってしまう 明示的に=を指定する
 注:ワイルド・カード文字を、「文字」として抽出条件にしたいときは、明示的に「=」を入れます。
 セルに文字を入れただけで検索処理すると、自動で「Like」が付いてしまいます。

データ内にあるワイルドカード文字を検索するには、[#] のように検索対象の文字を角かっこ ([]) で囲みます。
アスタリスク (*)、疑問符 (?)、シャープ記号 (#)、開き角かっこ ([)、およびハイフン (-) を検索する場合は、この規則に従います。
感嘆符 (!) や閉じ角かっこ (]) を検索する場合は、角かっこを使用しません。
[検索と置換] ダイアログ ボックスを使用してこれらの文字を検索するには、[検索する文字列] ボックスに検索する文字を角かっこで囲まずに入力します。
クエリを使用して文字を検索する場合も同様です。
たとえば、構文 Like "*!*" では、データ内で感嘆符のある場所にかかわらず、感嘆符を含むすべてのレコードが返されます。
http://office.microsoft.com/ja-jp/access-help/HA010076601.aspx

ワイルドカード文字の使用例

Access データベース内のワイルドカード文字を検索する
http://office.microsoft.com/ja-jp/access-help/HA001171536.aspx

各ワイルドカード文字が対応するパターンの種類を理解していれば、ワイルドカードどうしや、ワイルドカードとリテラル文字を組み合わせて使用して、さまざまな結果を取得できます。
[検索条件] ボックスの一覧で選択した設定により、検索結果が変わることに注意してください。
適切でない設定を使用した場合、検索の結果、不要なデータが返されたり、結果がまったく返されない可能性もあります。
以下の表に、[検索と置換] ダイアログ ボックスでのワイルドカードとリテラル文字の使用例と、[検索条件] ボックスの一覧のオプション別にどのような結果になるかを示します。

 メモ   ここに記載されている例は、選択クエリや更新クエリでも使用できます。

検索文字 [検索条件] ボックスの設 結果
[*] [フィールドの一部分] アスタリスク (*) を含むすべてのレコードを返します。
この構文は、疑問符 (?) やシャープ記号 (#)、開き角かっこ ([)、ハイフン (-) にも使用できます。
[フィールド全体] アスタリスク (*) のみを含むレコードを返します。
[フィールドの先頭] アスタリスク (*) で始まるレコードを返します。
*[*]* [フィールドの一部分] アスタリスク (*) とその前後にあるテキストを含むすべてのレコードを返します。
この構文は、疑問符 (?) やシャープ記号 (#)、開き角かっこ ([)、ハイフン (-) にも使用できます。
[フィールド全体] 同上。
[フィールドの先頭] 同上。
[!*] [フィールドの一部分]

アスタリスク (*) を含まないすべてのレコードを返します。
[検索条件] ボックスでこの設定を使用した場合、この検索パターンではレコードの一語一句がすべて返される可能性があることに注意してください。
この構文は、疑問符 (?) やシャープ記号 (#)、開き角かっこ ([)、ハイフン (-) にも使用できます。

 メモ   *[!*]* を検索文字列にした場合は、アスタリスクの前後にあるテキストすべてが検索されるため、アスタリスクを含むレコードが返されます。

[フィールド全体] 何の結果も返されません。
[フィールドの先頭] アスタリスク (*) を含まないレコードの先頭の文字を返します。
ma*[ch] [フィールドの一部分] "ma" と "c" または "h" を含むすべてのレコードを返します。
たとえば、この設定では、"march" と "match" のほか、"math" や "manic" も返されます。
[フィールド全体] "ma" で始まり、"c" または "h" で終わるすべてのレコードを返します。
たとえば、この設定では、"march" と "match" のほか、"math" や "manic" も返されます。
[フィールドの先頭] "ma" で始まり、"c" または "h" を含むすべてのレコードを返します。
ma*[!ch] [フィールドの一部分]

"m" と "a" の文字と、この文字に続くテキストを "c" または "h" が出現するまですべて強調表示します。
次の図は、この状態を示しています。

部分的なパターン マッチ

部分的なパターン マッチの別の例

つまり、"c" および "h" を含むレコードを除外しようとしても、[フィールドの一部分] では角かっこの前のテキストが照合されるため、"c" や "h" を含むレコードが取得される可能性があります。

[フィールド全体] レコードの最後に "c" または "h" が含まれないすべてのレコードを返します。
たとえば、最後の文字が "c" であるため "manic" は返されませんが、"maniacal" は "c" の後に続く文字があるため返されます。
[フィールドの先頭] "ma" で始まるレコードを返します。
この場合も、角かっこで囲まれている文字の前のテキストが照合されるため、望むような結果が得られない可能性があります。
 

 
このページのトップに戻る↑ 次の項目を見る↓ Accessでお仕事 目次に戻る

ホームページのトップに戻る