oracle update set 多个字段
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle update set 多个字段相关的知识,希望对你有一定的参考价值。
UPDATE M_VEH_CHARGE_REAL SET ( CHARGE_TIME ,YGZDD , POWER_STATION_NO , WHETHER_BATTERY , VOLT , CUR) =
(select CHAGE_TIME , YGZDD, POWER_STATION_NO, WHETHER_BATTERY, VOLT, CUR from ( select rownum rn, t.* from M_CHARGEPOLE_REAL t where CHARGEPOLE_NO in
(select EQUIP_NO from D_STAKE_ARCH order by CHARGEPOLE_NO where STAKE_PARA_ID = '3') )B , ( select rownum rn , z.EQUIP_NO from D_CHG_ENG_ARCH z order by EQUIP_NO where CHG_ENG_PARA_ID = '7' )C
where B.rn = C.rn and M_VEH_CHARGE_REAL.CHARGE_NO = C.EQUIP_NO)
WHERE EXISTS ( SELECT 1 FROM ( from (select rownum rn, t.* from M_CHARGEPOLE_REAL t where CHARGEPOLE_NO in
(select EQUIP_NO from D_STAKE_ARCH where STAKE_PARA_ID = '3') order by CHARGEPOLE_NO )B , ( select rownum rn , z.EQUIP_NO from D_CHG_ENG_ARCH z where CHG_ENG_PARA_ID = '7' order by EQUIP_NO)C
where B.rn = C.rn and M_VEH_CHARGE_REAL.CHARGE_NO = C.EQUIP_NO)
错误信息:ora-00907:missing right parenthesis
思路: 表B的数据更新A表数据(A表的id = C表 id )
那行多了 from (
WHERE EXISTS ( SELECT 1 FROM (select rownum rn, t.* from M_CHARGEPOLE_REAL t
一个sql都一天了还没搞定 有问题私聊我追问
不好意思 那是往这上面写的时候多写的之前并没有 ...
还是 ORA-00907 :missing right parenthesis
后面的select 列名from ...where b.rn=c.rn 之间是正确的 在pl/sql里可以查询出结果
并没有发现少括号
以上是关于oracle update set 多个字段的主要内容,如果未能解决你的问题,请参考以下文章
oracle 怎么理解update 表 set 字段1 = 值,字段2 = 值 where 字段3 = 值
update 表1 set 字段1=字段3 where 条件 和 update 表1 set 字段2=字段4 这两个语句能合并成一个么 不行的
oracle 怎么更新多个值 update A a set a.id = (select b.id from B b where a.name=b.name)