It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center。
7年前关闭。
我想用一个查询更新多行。我正在使用MySQL。
什么是正确的查询?
这是一个示例,其中我需要使用一个查询来更新多个姓氏。
开始:
完:
编辑
如果在另一个表中有关系名称-NewLastName,则创建一个脚本:
这将生成所有
然后将其添加到
编辑2
7年前关闭。
我想用一个查询更新多行。我正在使用MySQL。
什么是正确的查询?
这是一个示例,其中我需要使用一个查询来更新多个姓氏。
开始:
name last_name
______ ________
James abcasd
Becky hadsfd
Richard adfdfadgg
完:
name last_name
______ ________
James Jamerson
Becky Beckerdude
Richard O'Nerdy
最佳答案
如果情况有限,可以使用Case Statement.
update yourTable set Last_Name = CASE When Name = 'James' then 'Jamerson'
WHEN Name = 'Becky' then 'Beckerdude'..
--then for each case
END
编辑
如果在另一个表中有关系名称-NewLastName,则创建一个脚本:
select
'When Name = '''+CAST(Name as Varchar(50)+''' Then '''+Cast(LastName as Varchar(50)+'''
from yourTableWithRelation
这将生成所有
When Name then LastName
然后将其添加到
update
Update yourTable set Last_Name = CASE
--Paste here the generated
END
编辑2
update
的另一种最佳方式,如果您在另一个表中获得了该关系:Update T set T.Last_Name = T2.LastName from YourTableToUpdate T inner join TableWithNewLastName T2
on T1.Name = T2.Name