この記事では、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" を検索します。