Visual FoxPro の SQL-SELECT ステートメントでワイルドカード文字を使用する

この記事では、SQL-SELECT ステートメントでワイルドカード文字を使用して、このステートメントに汎用性を追加する方法について説明します。

元の製品バージョン: Visual FoxPro
元の KB 番号: 98434

概要

構造化クエリ言語 (SQL-SELECT) ステートメントの選択範囲を広げるには、パーセント記号 (%) とアンダースコア (_) の 2 つのワイルドカード文字を使用できます。

パーセント記号は、MS-DOS で使用されるアスタリスク (*) ワイルドカード文字に似ています。 パーセント記号を使用すると、フィールド内の 1 つ以上の文字を置換できます。

アンダースコアは MS-DOS ワイルドカード疑問符文字に似ています。 アンダースコアを使用すると、式内の 1 文字を置換できます。 SQL-SELECT ステートメントでのこれらの文字の使用を示す 3 つの例を以下に示します。 この例では、Home(2)+data フォルダーに Microsoft Visual FoxPro に含まれている Customer.dbf ファイルを使用します。

詳細

次の SELECT-SQL ステートメントは、フィールドの最初の文字として "W" を含む Customer.dbf テーブルのすべてのレコードを Regionabbreviation 返します。 SELECT-SQL ステートメントは、参照ウィンドウの "WY" と "WA" のレコードを一覧表示します。

 SELECT * from customer WHERE Region like "W_"

次の SELECT-SQL ステートメントは、フィールドの最後の文字として "P" または "C" を持つすべてのレコードを Regionabbreviation 一覧表示します。 出力には、"SP" と "BC" のレコードが含まれます。

SELECT * from customer WHERE Region like "_P" OR region like "_C"

次の SELECT-SQL ステートメントでは、パーセント記号とアンダースコアを使用して、"G" で始まり、"P" で終わるフィールドを持つCust_IDを持つ Regionabbreviation すべてのレコードを返します。

注:

パーセント記号を使用すると、任意の文字列が "G" に従うことができます。逆に、アンダースコアは 1 文字のみの置換を許可します。

SELECT * FROM Customer WHERE cust_ID LIKE "G%" AND region LIKE "_P"

$ 関数で実行される文字列検索と同様の文字列検索を実行するには、次のようなステートメントを使用します。

SELECT * from customer WHERE company like "%M%"

この SELECT-SQL ステートメントは、"M" を含む名前を持つすべての企業を検索します。

関連情報

詳細については、Visual FoxPro ヘルプ ファイルに関するページを参照してください。 "SELECT - SQL" を検索します。