我有一个表PersonalInfo
,其中包含Id, Name, Address
。
假设我有以下数据
1 John US
2 Mark UK
3 John UK
4 David US
现在我插入以下新记录
5 John China
我想更新与新记录具有相同名称的最后一条记录,例如此处显示记录3 John UK
将更新为3 John China
。
当我插入第5条记录时,表格应为
1 John US
2 Mark UK
3 John China
4 David US
5 John China
我应该使用什么SQL查询?
答案 0 :(得分:0)
假设Id是自动递增的,它将是该名称和地址组合的最高值。
UPDATE PersonalInfo
SET Address = 'US'
WHERE ID = (SELECT MAX(Id)
FROM PersonalInfo
WHERE Name = 'John'
AND Address = 'UK'
)