即効テクニック |
●概要● 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
●補足● 結果は[イミディエイト]ウィンドウに表示されます。