我有一张看起来像这样的表:
------------------------
|id | status |value|
------------------------
|1 | Y |10 |
|2 | N |10 |
|3 | Y |10 |
|4 | N |10 |
|5 | N |10 |
------------------------
对于每个status = 'N'
,我想在其值中添加3并将其状态设置为'Y'
。因此,结果表应为:
------------------------
|id | status |value|
------------------------
|1 | Y |10 |
|2 | Y |13 |
|3 | Y |10 |
|4 | Y |13 |
|5 | Y |13 |
------------------------
如何在SQL Server中以最佳方式执行此操作?
答案 0 :(得分:1)
update your_table
set status = 'Y',
value = value + 3
where status = 'N'