如下sql报ORA-00933 命令未正确结束?请问该怎么解决?

update set table1 fir set fir.a=(select name from table2 sec where fir.id_1=sec.id) and fir.b=(select name from table2 sec where fir.id_2=sec.id);想要做此更新多个字段应该如何写sql?这个sql报ORA-00933 命令未正确结束

慕哥9229398
浏览 687回答 3
3回答

冉冉说

实际上是语法错误。同时更新多个字段,不是使用and连接,而是使用','逗号隔开。所以,你这个语句的正确写法是,把and改成,update set table1 fir set fir.a=(select name from table2 sec where fir.id_1=sec.id) , fir.b=(select name from table2 sec where fir.id_2=sec.id);

qq_花开花谢_0

update table1 set RYMC = '人员名称'||rownum;你这样试试,执行前备份一下table1里的数据,别不是你想要的结果如果是全表修改不用加条件,如果不是的全表修改,比如只修改前50条update table1 set RYMC = '人员名称'||rownum where rownum<=50;

尚方宝剑之说

update set table1 firset (fir.a=(select name from table2 secwhere fir.id_1=sec.id) ,fir.b=(select name from table2 sec where fir.id_2=sec.id));
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Oracle