我可以在此表上运行任何类型的VBA或SQL,删除MS Access中的重复ID吗?
所以这个:
ID data1 data2 data3
a 1 2 3
a 8 9 10
a 15 16 17
a 22 23 24
b 1 2 3
b 8 9 10
b 15 16 17
b 22 23 24
b 29 30 31
c 1 2 3
c 8 9 10
c 15 16 17
c 22 23 24
c 29 30 31
c 36 37 38
看起来像这样:
ID data1 data2 data3
a 1 2 3
8 9 10
15 16 17
22 23 24
b 1 2 3
8 9 10
15 16 17
22 23 24
29 30 31
c 1 2 3
8 9 10
15 16 17
22 23 24
29 30 31
36 37 38
答案 0 :(得分:3)
您可以将视图用作
select distinct First Name , Last Name from T1
并将此查询保存为V1 那么你现在有了名字和姓氏,没有重复的
现在使用代码
select * from V1 , T1 where V1.First Name =T1.First Name and V1.Last Name=T1.Last Name
我希望这可以帮助你解决一个问题
答案 1 :(得分:3)
以下内容应清除除第一条记录之外的所有ID
列。您可能需要修改ORDER BY
以包含另一列,以确保此代码的运行顺序与导出之后的顺序相同。
Dim strKey as String
Dim iCount as Integer
Dim dbs as DAO.Database
Dim rst as DAO.Recordset
strKey = ""
iCount = 0
Set dbs = CurrentDb
Set rst = dbs.OpenRecordset("SELECT * FROM MYTABLE ORDER BY ID")
If rst.RecordCount > 0
rst.MoveFirst
Do Until rst.EOF
If strKey <> rst!ID Then
strKey = rst!ID
iCount = 1
End If
If iCount > 1 Then
rst.Edit
rst!ID = ""
rst.Update
End If
iCount = iCount + 1
rst.MoveNext
Loop
End If
rst.Close
Set rst = Nothing
dbs.Close
Set dbs = Nothing
答案 2 :(得分:0)
这将为您提供您的名字,姓氏以及与单行上该名字和姓氏相关的所有数据的总和。
SELECT FirstName, LastName, sum(data1), sum(data2), sum(data3)
FROM MyTableName
GROUP BY FirstName, LastName
这会给你类似下面的内容:
First Name Last Name data1 data2 data3
a z 46 50 54
b x 75 80 85