HOME > 即効テクニック > AccessVBA > クエリ・SQL > グループに条件を指定する

即効テクニック

クエリ・SQL

グループに条件を指定する

(Access 2000/2002)
●概要●
HAVING句を使用して、GROUP BY句でグループ化したグループに条件を指定します。
HAVING句では、SELECT句で指定していないフィールドを条件に使用することもできます。サンプルでは、「部署」ごとのレコード件数が2件以上のグループを選択します。
●サンプル●
'グループに条件を指定する
Public Sub Sample()

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

    'SQLステートメントを定義する
    mySQL = "SELECT 部署コード,COUNT(社員コード) " & _
            "FROM 社員テーブル GROUP BY 部署コード " & _
            "HAVING COUNT(社員コード) >= 2;"

    'カレントデータベースを変数に代入する
    Set myDB = CurrentDb
    'SQLステートメントを実行してレコードセットを開く
    Set myRS = myDB.OpenRecordset(mySQL, dbOpenDynaset)
    'レコードセットの内容を表示する
    Do Until myRS.EOF
        Debug.Print "部署コード: " & myRS(0) & "  " & myRS(1) & "人"
        myRS.MoveNext
    Loop
    'レコードセットを閉じる
    myRS.Close

End Sub
●補足●
結果は[イミディエイト]ウィンドウに表示されます。