case when 修改原列数据
时间: 2023-10-06 19:08:21 浏览: 109
根据提供的引用内容,有一个关于修改原列数据的问题。可以使用CASE WHEN语句来修改原列数据。例如,可以使用以下代码来修改原列数据:
DECLARE
CURSOR cur IS SELECT m.id FROM 数据表 m WHERE rownum <= 行数;
n_count NUMBER := 0;
BEGIN
FOR row IN cur LOOP
UPDATE 修改表
SET 列名 =
CASE
WHEN 列名 = '别名' THEN '真实名字'
ELSE 列名
END;
n_count := n_count + 1;
END LOOP;
DBMS_OUTPUT.PUT_LINE('成功修改了 ' || n_count || ' 行数据');
END;
在这个代码中,CURSOR用于选择需要修改的数据行,然后使用FOR循环遍历每一行数据。在UPDATE语句中,使用CASE WHEN语句来判断原列数据是否为别名,并将其替换为真实名字。最后,使用DBMS_OUTPUT.PUT_LINE语句输出成功修改的行数。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [oracle从一个表中获取数据更新到另一个表(两表无关联关系)](https://download.csdn.net/download/weixin_38518885/13683537)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"]
- *2* [通过case when实现SQL 多个字段合并为一列值](https://blog.csdn.net/weixin_33828092/article/details/116078171)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"]
- *3* [SQL 之 CASE WHEN 修改查询数据,不符合修改条件的部分则保持不变](https://blog.csdn.net/weixin_58320025/article/details/125007700)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"]
[ .reference_list ]
阅读全文