使用不同的数据更新许多行

时间:2013-09-21 17:15:01

标签: sql sql-update

我有一个名为name的表,其中包含2列,firstnamesurname。如果我有10行firstname作为TOM且surname列为null(emtpty),我将如何编写UPDATE命令来更新所有具有不同姓氏的所有10行。

例如

UPDATE [name] 
SET surname = 'value' 
WHERE firstname = 'Tom'

所以在你设置列的值的地方我想要添加10个姓氏,它会用firstname Tom更新10行,并在update语句中使用10个不同的姓氏。

我希望我解释好了,你明白了。

感谢。

2 个答案:

答案 0 :(得分:0)

创建一个姓氏表,其姓氏值来自一个从一开始的序列。 每个可能的空值都需要一个姓氏。

将序列设置回一个。

进行更新, 选择具有NULL姓氏的名称和 使用nextval为你提供加入到姓氏表的id。

答案 1 :(得分:0)

您可以根据需要在一个语句中更新任意数量的行。您可以使用CASE表达式来选择要写入的值,或使用临时表,表变量或表值参数来指定要写入的值。使用您最喜欢的搜索引擎来了解如何做到这一点。