如下
UPDATE T_XSDDTJ144 SET F_BMMC=KCBMZD_BMMC FROM T_XSDDTJ144,KCBMZD WHERE T_XSDDTJ144.F_BMBH=KCBMZD_BMBH好像是在F_BMMC=KCBMZD_BMMC这里出问题了?
怎么改呢?
UPDATE T_XSDDTJ144 SET F_BMMC=KCBMZD_BMMC FROM T_XSDDTJ144,KCBMZD WHERE T_XSDDTJ144.F_BMBH=KCBMZD_BMBH好像是在F_BMMC=KCBMZD_BMMC这里出问题了?
怎么改呢?
解决方案 »
- oracle10g 的enterprise manager问题
- 在Redhat AS4上基于ASM存储的ORACLE 10g单实例数据库安装
- 我想看英文的oca教材电子版,请问哪里有.
- 请教什么情况下会报:java.sql.SQLException: ORA-01843: not a valid month 以及如何解决
- 请教如何去除此数据
- 请问:开发了OCI的应用程序后,如何才能在客户的机器上运行?是否可以不装那么大的Oracle Client?
- 请教高手这个程序问题!
- 关于数据库碎片的问题
- 初学者的送分问题,查看数据库有多少数据表的查询语句如何写!
- oracle有没有类似Access中的自动递增类型
- 如何批处理执行多个sql文件
- 在新设备Linux下恢复ORACLE的dbf文件
where exists
(
select 1
from KCBMZD b
where a.F_BMBH=b.BMBH
)
SET F_BMMC=KCBMZD_BMMC
where exists
(
select 1
from KCBMZD b
where a.F_BMBH=b.BMBH)
UPDATE T_XSDDTJ144 a
SET F_BMMC = KCBMZD_BMMC
WHERE EXISTS
(SELECT 1
FROM KCBMZD b
WHERE a.F_BMBH = b.BMBH)上面的都有点错误
--update语句最好带上where子句
update T_XSDDTJ144 t1
set F_BMMC=(
select KCBMZD_BMMC
from KCBMZD t2
where t1.F_BMBH=t2.KCBMZD_BMBH)
where exists(
select 1 from KCBMZD t3
where t1.F_BMBH=t3.KCBMZD_BMBH)
--使用merge into 效率高,10G以上
MERGE INTO T_XSDDTJ144 T1
USING KCBMZD T2
ON (T1.F_BMBH = T2.KCBMZD_BMBH)
WHEN MATCHED THEN
UPDATE SET T1.F_BMMC = T2.KCBMZD_BMMC