sql - 如何根据条件更新SQL Server中指定数据组的所有行?

标签 sql sql-server

我有这些数据:

我需要更新“IsConsideredNewHire”列,以便如果与其相关的控制组中有零,则该控制组的所有其他行都应该为零。

更新后,您会得到如下内容:

我很难弄清楚如何实现这一目标。

有人愿意帮助我吗?

最佳答案

您可以简单地执行以下操作:

UPDATE MyTable
SET IsConsideredNewHire = 0
WHERE ControlGroupID IN (SELECT DISTINCT ControlGroupID 
                         FROM MyTable
                         WHERE IsConsideredNewHire=0)

关于sql - 如何根据条件更新SQL Server中指定数据组的所有行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31280434/

相关文章:

sql-server - 如何设置 SQL Server 2005 作业 CmdExec 超时

MySQL获取两个条件之间范围的id

sql-server - 无法批量加载。操作系统错误代码 5(访问被拒绝。)

php - 自动增量与唯一键的区别当你把它们都放在一张表中时?

sql - 重复的外键约束 - 支持或反对的原因

mysql - 在服务器上运行算法的应用程序

java - Spring-Data-JPA throws "Caused by: java.sql.SQLException: Incorrect syntax near ' limit'."by using findAll

sql - 如何按 DATEDIFF 对行进行分组?

mysql - Left 函数遗漏字符

mysql - SQL查询错误 "DEFAULT NULL"