我是 oracle 的新手,我想更新列中的多行值id = 1 , 2
。
我试过这个:
update Tester
set employee_phone_number = ( 0789456123,0789456321)
where employee_id in (1,2);
但它给了我“缺少右括号”
任何帮助,请提前致谢。
我是 oracle 的新手,我想更新列中的多行值id = 1 , 2
。
我试过这个:
update Tester
set employee_phone_number = ( 0789456123,0789456321)
where employee_id in (1,2);
但它给了我“缺少右括号”
任何帮助,请提前致谢。
另一种方法:
merge into
tester
using (
select 1 id,'0123456785' employee_phone_number from dual union all
select 2 id,'0123456786' employee_phone_number from dual) new_values
on (
tester.id = new_values.id)
when matched then update
set employee_phone_number = new_values.employee_phone_number;
更多单词,但允许仅在一个位置指定值并扩展以允许插入 id 不存在的位置。
试试这个:
update Tester
set employee_phone_number = CASE WHEN employee_id = 1 THEN 0789456123
WHEN employee_id = 2 THEN 0789456321
END
where employee_id in (1,2);