首页 文章

具有重复记录的访问/ SQL更新

提问于
浏览
-1

我有一个问题,如果表中有重复的记录,如何在Access中编写查询 .

假设我有以下两个表, table1 是我希望通过在 table2 中将 field1field1 匹配来更新的表,并更新关联的 field2 值 . 但是,当 table2 中有多个匹配记录时,我想根据值的字母顺序进行更新 .

你能告诉我怎么做吗? SQL代码将非常感激 .

Table1

Field1     |Field2
------------------
Male name  |?
Female name|?

Table2

Field1     |Field2
--------------------
Male name  | Alex
Male name  | Ben
Female name| Diana
Female name| Cindy

Wanted result:

Table1

Field1     |Field2
------------------
Male name  | Alex
Female name| Cindy

1 回答

  • 0

    似乎是使用Top N predicate的好时机 .

    Select Top 1 Table1.Field1, Table2.Field2
    From Table1
    Left Join Table2 
      on Table1.Field1 = Table2.Field1
    Order by Table1.Field1, Table2.Field2 ASC
    

    通过使用Order By,您可以按字母顺序对数据进行排序,然后使用Top N来获取第一条记录 .

相关问题