[英]SQL Developer ORACLE SCRPT
我有一個有 2 列的表
通用名稱 | 用戶名 |
---|---|
ABC 123 | 123 |
CDE 123 | XYZ 123 |
我正在嘗試找到一個 PL SQL 腳本,它將遍歷公用名列中的所有用戶,如果公用名不等於 usr_name,那么它會更新 usr 名稱並使其與公用名相同
應該是這樣的
if common name != usr name // 更新 usr_name == common name
您不需要 PL/SQL,使用UPDATE
SQL 語句並將您的邏輯放在WHERE
子句中:
UPDATE table_name
SET usr_name = common_name
WHERE usr_name != common_name
OR (usr_name IS NOT NULL AND common_name IS NULL)
OR (usr_name IS NULL AND common_name IS NOT NULL)
其中,對於樣本數據:
CREATE TABLE table_name (Common_name, usr_name) AS
SELECT 'ABC 123', '123' FROM DUAL UNION ALL
SELECT 'CDE 123', 'XYZ 123' FROM DUAL
然后,更新后的表包含:
COMMON_NAME USR_NAME ABC 123 ABC 123 CDE 123 CDE 123
db<> 在這里擺弄
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.