次の方法で共有


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

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

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

まとめ

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

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

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

詳細

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

 SELECT * from customer WHERE Region like "W_"

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

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

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

注記

パーセント記号を使用すると、任意の文字列が "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" を検索します。