Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 更新符合条件的第一行_Sql Server_Ms Access - Fatal编程技术网

Sql server 更新符合条件的第一行

Sql server 更新符合条件的第一行,sql-server,ms-access,Sql Server,Ms Access,第3列包含John两次两个相关行/记录,类似地,它包含Kate第三次和Tim两次。 如何调整查询,使更新只影响John的第一行、Kate的第一行和Tim的第一行 表1供参考: Update table1 set column1 = 'abc', column2 = 25 where column3 IN ('John','Kate','Tim') 我只想更新标记为的行 我对Ms Access特别感兴趣但也很好奇,如果Sql Server不同,它是如何实现的。谢谢大家! Sql Server解决

第3列包含John两次两个相关行/记录,类似地,它包含Kate第三次和Tim两次。 如何调整查询,使更新只影响John的第一行、Kate的第一行和Tim的第一行

表1供参考:

Update table1
set column1 = 'abc', column2 = 25
where column3 IN ('John','Kate','Tim')
我只想更新标记为的行


我对Ms Access特别感兴趣但也很好奇,如果Sql Server不同,它是如何实现的。谢谢大家!

Sql Server解决方案-注意,您必须有一个唯一的标识列才能使其工作,或者有一组唯一的列

column1 column2 column3
aa       2       John (!)
affd     24      John 
dfd      5       Tim (!)
ss       77      Kate (!)
s        4       Tim
s        1       Kate
sds      34      Kate

Sql Server解决方案-注意,您必须有一个唯一的标识列才能使其工作,或者有一组唯一的列

column1 column2 column3
aa       2       John (!)
affd     24      John 
dfd      5       Tim (!)
ss       77      Kate (!)
s        4       Tim
s        1       Kate
sds      34      Kate

在SQLServer2005+中,可能会使用CTE和ROW_编号调用,不过您仍然需要知道决定行的第一位的是什么。我不知道如何在MS Access中解决这个问题。在SQL Server 2005+中,可能会使用CTE和行号调用,尽管您仍然需要知道行的第一位是由什么决定的。我不知道如何在MS Access中解决这个问题。