0

MS Access内の重複IDを削除するこのテーブルで実行できるVBAまたはSQLの種類はありますか?

したがって、この:

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  
4

3 に答える 3

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

これがあなたの質問に役立つことを願っています

于 2013-03-12T11:50:36.197 に答える
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
于 2013-03-12T13:23:32.617 に答える
0

これにより、姓、名、およびその姓と名に関連付けられたすべてのデータの合計が 1 行に表示されます。

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  
于 2013-03-12T11:55:52.250 に答える