HOME > 即効テクニック > AccessVBA > クエリ・SQL > 重複したレコードを除く(DISTINCTキーワード)

即効テクニック

クエリ・SQL

重複したレコードを除く(DISTINCTキーワード)

(Access 2000/2002)
●概要●
構文  SELECT DISTINCT フィールド1,フィールド2,・・・ FROM テーブル名

DISTINCTを使用すると、SELECT句で指定しているすべてのフィールドの組み合わせが一致するレコードは重複行として排除されます。
サンプルでは「社員テーブル」から重複レコードを除いて「部署コード」を選択します。
●サンプル●
'重複したレコードを除く(DISTINCT)
Public Sub Sample()

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

    'SQLステートメントを定義する
    mySQL = "SELECT DISTINCT 部署コード FROM 社員テーブル ;"

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

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