即効テクニック |
SQLのLIKE句を用いて指定したワイルドカード検索を行います。 LIKE句は以下のような構文になっています。 WHERE 属性名 LIKE '*<文字列>' WHERE 属性名 LIKE '<文字列>*' WHERE 属性名 LIKE '*<文字列>*' ここではNorthWIND.MDBの「社員」テーブルにおいて社員の氏名の中に「川」が付く人のレコードを抽出してその結果をビュー「新規クエリ」に書き出しています。●サンプルコード●
Private Sub SQL_Like() Dim cn As New ADODB.Connection Dim cmd As ADODB.Command Dim cat As New ADOX.Catalog Dim strSQL As String Set cn = New ADODB.Connection cn.ConnectionString = _ "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=D:\NorthWIND.MDB" cn.Open cat.ActiveConnection = cn '氏名の途中に「川」がある社員 strSQL = "SELECT * FROM 社員 WHERE 氏名 LIKE '*川*'" Set cmd = New ADODB.Command cmd.ActiveConnection = cn cmd.CommandText = strSQL cat.Views.Append "新規クエリ", cmd cn.Close Set cmd = Nothing Set cn = Nothing Set cat = Nothing End Sub
●動作確認● 作成されたビュー「新規クエリ」に「川」が付く氏名の社員のレコードが作成されていることを確認してください。 ●補足● プロバイダによっては「*」が使えない場合があります。