以下是一个示例代码,演示了如何在不使用游标的情况下更新每个选择行的结果:
UPDATE your_table
SET column_name = CASE
    WHEN condition1 THEN new_value1
    WHEN condition2 THEN new_value2
    ...
    ELSE column_name
END;
在上面的示例中,您需要将your_table替换为您的表名,column_name替换为您要更新的列名。然后,您可以根据需要添加多个WHEN子句,每个子句定义了一个条件和一个新值。最后的ELSE子句用于指定如果没有条件匹配时要使用的默认值。
以下是一个具体的示例,假设我们有一个名为users的表,其中包含id和status列。我们想要将status为'active'的所有用户的状态更改为'inactive':
UPDATE users
SET status = CASE
    WHEN status = 'active' THEN 'inactive'
    ELSE status
END;
这将更新users表中所有满足条件status = 'active'的行的status列为'inactive'。其他行的status值将保持不变。
                    上一篇:不使用游标迭代行的SQL
                
下一篇:不使用游标来创建ID范围