HOME > 即効テクニック > AccessVBA > クエリ・SQL > 範囲を指定して検索する

即効テクニック

クエリ・SQL

範囲を指定して検索する

(Access 2000/2002)
●概要●
BETWEEN演算子を使用して、範囲を指定して検索します。BETWEEN A AND Bと記述することにより、フィールドの値がAとBの間のレコードを検索します。
サンプルでは、「部署コード」が20と40の間のレコードを検索します。
●サンプル●
'範囲を指定して検索する
Public Sub Sample()

    Dim myDB As Database
    Dim myRS As DAO.Recordset
    Dim mySQL As String

    'SQLステートメントを定義する
    mySQL = "SELECT * FROM 社員テーブル" _
             & " WHERE 部署コード BETWEEN 20 AND 40 ;"

    'カレントデータベースを変数に代入する
    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
●補足●
結果は[イミディエイト]ウィンドウに表示されます。
「BETWEEN A AND B」と記述すると「AとBの間」という条件となり、A、Bの値を含みます。「Aより大きくかつBより小さい」条件を指定する場合には、AND演算子を使用して「フィールド1 > A AND フィールド1 < B」と記述します。