如何在单个更新语句中新添加的列中插入不同的值?

问题描述 投票:0回答:1
在T-SQL中,我添加了一个名为“ Age”的新列为“员工”,但是我必须编写不同的更新语句以插入每个年龄值,因为每个员工都有不同的年龄。

有任何方法可以将不同的年龄值插入单个更新语句中?我不能使用默认值或条件的地方,因为员工年龄没有模式。

在数据库中保留不断变化的价值不是一个好主意:每天有人可能会改变他的年龄。生日不会改变。
sql-server t-sql sql-update
1个回答
0
投票

如果您想在“一个”时间中插入/更新,则有2个选项:

在交易中进行几个插入/更新,您可以回滚是错误的情况。
  1. 构造一个表,然后插入/更新内容:

  2. UPDATE emp SET emp.Age = tmp.Age FROM dbo.Employee AS emp INNER JOIN (VALUES('name1', 25), ('name2', 52), ('name3', 34)) AS tmp(lastname, age) ON tmp.lastname = emp.lastname

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.