讀取表中不重復(fù)的記錄且顯示全部字段

字號(hào):

問(wèn)題:
    根據(jù)其中幾個(gè)字段判斷重復(fù),只保留一條記錄,但是要顯示全部字段,怎么查詢(xún),謝謝??!
    比如
    字段1 字段2 字段3 字段4
    a b c 1
    a b c 1
    a b d 2
    a b d 3
    b b d 2
    想得到的結(jié)果為
    a b c 1
    a b d 2(或者3)
    b b d 2
    說(shuō)明,根據(jù)字段1,2,3組合不重復(fù),字段4 不考慮,得到了3個(gè)記錄
    但是也要顯示字段4。
    方法一:
    可以用臨時(shí)表的方法來(lái)解決:
    CurrentProject.Connection.Execute "drop table temptable"
    CurrentProject.Connection.Execute "select * into temptable from 表2 where 1=2"
    CurrentProject.Connection.Execute "insert into temptable(字段1,字段2,字段3) SELECT DISTINCT 表2.字段1, 表2.字段2, 表2.字段3 FROM 表2;"
    CurrentProject.Connection.Execute "UPDATE temptable INNER JOIN 表2 ON (表2.字段1 = temptable.字段1) AND (表2.字段2 = temptable.字段2) AND (表2.字段3 = temptable.字段3) SET temptable.字段4 = [表2].[字段4];"
       方法二:
    可以直接使用一個(gè)SELECT查詢(xún)篩選出需要的數(shù)據(jù):
    可以假定第四字段都選值最小的
    SELECT [1],[2], [3], Min([4]) AS Min4
    FROM 表1
    GROUP BY 表1.[1], 表1.[2], 表1.[3];