●概要●
LIKE演算子を使用して、パターンマッチングを使った検索を行うことができます。
パターン文字列に次のワイルドカードを使って条件を指定します。
* 任意の文字列。長さ0の文字列でも可
? 任意の1文字
# 任意の1文字の数字
サンプルでは、「名前」の2文字目に「田」を含むレコードを検索します。
●サンプル●
'パターンマッチングで検索する
Public Sub Sample()
Dim myDB As Database
Dim myRS As DAO.Recordset
Dim mySQL As String
'SQLステートメントを定義する
mySQL = "SELECT * FROM 社員テーブル WHERE 名前 LIKE '?田*' ;"
'カレントデータベースを変数に代入する
Set myDB = CurrentDb
'SQLステートメントを実行してレコードセットを開く
Set myRS = myDB.OpenRecordset(mySQL, dbOpenDynaset)
'レコードセットの内容を表示する
Do Until myRS.EOF
Debug.Print myRS!社員コード & " " & myRS!部署コード & " " _
& myRS!名前 & " " & myRS!入社年月日 & " " & myRS!職種
myRS.MoveNext
Loop
'レコードセットを閉じる
myRS.Close
End Sub
●補足●
結果は[イミディエイト]ウィンドウに表示されます。
● 実行結果例 ●
10001 10 山田夏雄 1999/04/01 マネージャ
20012 50 上田明子 1985/04/01
20054 50 下田初男 1980/09/01 マネージャ
50075 50 中田弘樹 1982/04/01