Ms-access-wildcards
MS Access-ワイルドカード
ワイルドカードは、テキスト値の未知の文字を表すことができる特殊文字であり、類似しているが同一のデータではない複数のアイテムを見つけるのに便利です。 ワイルドカードは、指定されたパターンマッチでデータベース化するのにも役立ちます。
Accessは、構造化照会言語の2つの標準をサポートするため、2セットのワイルドカード文字をサポートします。
- ANSI-89
- ANSI-92
原則として、。mdb や。accdb *ファイルなどのAccessデータベースに対して*クエリ*および *find-and-replace 操作を実行するときは、ANSI-89ワイルドカードを使用します。
Accessプロジェクトに対してクエリを実行するときに、ANSI-92ワイルドカードを使用します— Microsoft SQL Serverデータベースに接続されたファイルにアクセスします。 SQL Serverはその標準を使用するため、AccessプロジェクトはANSI-92標準を使用します。
ANSI-89ワイルドカード文字
次の表は、ANSI-89でサポートされている文字を示しています-
Character | Description | Example |
---|---|---|
* | Matches any number of characters. You can use the asterisk (*) anywhere in a character string. | wh* finds what, white, and why, but not awhile or watch. |
? | Matches any single alphabetic character. | B?ll finds ball, bell, and bill. |
[ ] | Matches any single character within the brackets. | B[ae]ll finds ball and bell, but not bill. |
! | Matches any character not in the brackets. | b[!ae]ll finds bill and bull, but not ball or bell. |
- | Matches any one of a range of characters. You must specify the range in ascending order (A to Z, not Z to A). | b[a-c]d finds bad, bbd, and bcd. |
# | Matches any single numeric character. | 1#3S finds 103, 113, and 123. |
ANSI-92ワイルドカード文字
次の表は、ANSI-92でサポートされている文字を示しています-
Character | Description | Example |
---|---|---|
% | Matches any number of characters. It can be used as the first or last character in the character string. | wh% finds what, white, and why, but not awhile or watch. |
_ | Matches any single alphabetic character. | B_ll finds ball, bell, and bill. |
[ ] | Matches any single character within the brackets. | B[ae]ll finds ball and bell, but not bill. |
^ | Matches any character not in the brackets. | b[^ae]ll finds bill and bull, but not ball or bell. |
- | Matches any one of a range of characters. You must specify the range in ascending order (A to Z, not Z to A). | b[a-c]d finds bad, bbd, and bcd. |
例
ここで、クエリデザインを開いて、これらのワイルドカード文字を使用する簡単な例を見てみましょう。
強調表示されたテーブルを追加し、 Show Table ダイアログボックスを閉じます。
クエリ結果として表示するフィールドをクエリグリッドに追加します。
クエリを実行します。
もう一度*クエリデザイン*に移動して、プロジェクト名のプロンプトを追加します。
ここでクエリを実行し、正確なプロジェクト名はわからないが、プロジェクト名に「potion」という単語が含まれていることを知っていると仮定します。 [OK]をクリックしてください。
上記の手順では結果は生成されません。 これは、Accessが*プロジェクト名フィールド*で完全に一致するものを探しているためです。 名前に potion という単語が含まれているプロジェクトを探しています。
ユーザーがワイルドカードを入力して不明な文字を置換できるようにする場合は、基準を調整し、演算子 like を含める必要があります。
クエリを実行すると、ユーザーはワイルドカードを使用して任意の数の文字を置き換えることができます。
単語 potion がタイトルのどこかに現れることは知っているが、どこにあるのか正確にはわからないと仮定します。
ポーションという単語の前に任意の数の文字を置き換える*を追加し、その後に別の*を追加できます。 [OK]をクリックしてください。
ユーザーが入力できるワイルドカードを知っていることは常に良いことです。 ただし、入力できるワイルドカードとできないワイルドカードを知らないユーザーもいます。 その場合、ワイルドカードを自分で入力できます。
この状況では、 Like 演算子とパラメータープロンプトの間に、これらのワイルドカードを追加できます。これを記述するための非常に具体的な方法があります。 引用符で囲まれた like という単語の後に、使用しているワイルドカードを入力します。 この場合、「」を使用して任意の数の文字を置き換えています。 これをパラメーターに追加します。 そのためには、アンパサンド(&)記号とスペースが必要です。 このステップを繰り返し、別のアンパサンド(&)を追加します。これは、ユーザーがそのプロジェクト名に入力した条件にワイルドカードを結合し、引用符で「」を入力するためです。
クエリを再度実行してみましょう。 プロンプトにワイルドカードを使用せずに potion と入力します。
クエリは、ここで入力されたもののいずれかの側でこれらのワイルドカードを追跡します。 ポーションを入力してEnterキーを押すだけです。
これで、探していた結果が得られ、ユーザーが何を入力しても結果は同じになります。
タイトルに「the」という単語が含まれるすべてのプロジェクトを検索するとします。 次に、単語を入力して Enter するか、 Ok をクリックするだけです。
このクエリを使用すると、名前に「the」という単語が含まれるプロジェクトを簡単に検索できます。 結果の2 ^ nd ^レベルには、「the」が単語の一部である単語「mother」を含むプロジェクト名も含まれる場合があります。