下面这句 select B_ACC_CODE,
(SELECT B_ACC_NAME FROM MA_BACC WHERE B_ACC_CODE=PS.B_ACC_CODE) as B_ACC_NAME,
PROJECT_CODE,
(SELECT PROJECT_NAME FROM MA_PROJECT WHERE PROJECT_CODE=PS.PROJECT_CODE) as PROJECT_NAME,
START_SUM,PLAN_SUM,PAY_SUM ,BALA_SUM
from temp_AM_RPT PS
where abs(PLAN_SUM)>0.001 or abs(PAY_SUM )>0.001;
(SELECT B_ACC_NAME FROM MA_BACC WHERE B_ACC_CODE=PS.B_ACC_CODE) as B_ACC_NAME,
PROJECT_CODE,
(SELECT PROJECT_NAME FROM MA_PROJECT WHERE PROJECT_CODE=PS.PROJECT_CODE) as PROJECT_NAME,
START_SUM,PLAN_SUM,PAY_SUM ,BALA_SUM
from temp_AM_RPT PS
where abs(PLAN_SUM)>0.001 or abs(PAY_SUM )>0.001;
解决方案 »
- oracle有哪些知识
- TNS-12518 错误
- 问个简单问题,在ORACLE这种写法怎么实现?
- 求cnoug邀请码,有的朋友给我一个我的E-Mail:[email protected]
- 求教高手,客户端程序非法退出,连接无法自动中断,怎么办?
- oracle中怎样得到某表某列的默认值
- 一道有难度的查询问题.......
- SQL STATEMENT QUESTION!!! the question solved then destribute score immediate!!賬
- 在PL/SQL中数组是怎么表示的?
- 查询问题?
- 请教Oracle的varchar2类型长度问题(急)
- 问一个oracle数据类型转换的问题
---------------------------先定义变量----------------------------------
EXECUTE_Str Varchar2(2000); --一定要定义长些,不然很容易报缓冲错误 ---------------------------定义SQL字符串-------------------------------
EXECUTE_Str := '
insert into temp_AM_RPT
SELECT B_ACC_CODE,
(SELECT B_ACC_NAME FROM MA_BACC WHERE B_ACC_CODE=PS.B_ACC_CODE) as B_ACC_NAME,
PROJECT_CODE,
(SELECT PROJECT_NAME FROM MA_PROJECT WHERE PROJECT_CODE=PS.PROJECT_CODE) as PROJECT_NAME,
START_SUM,PLAN_SUM,PAY_SUM ,BALA_SUM
from temp_AM_RPT PS
where abs(PLAN_SUM)>0.001 or abs(PAY_SUM )>0.001'; ---------------------------执行SQL字符串-------------------------------
EXECUTE IMMEDIATE EXECUTE_Str;你必须把所有的Insert ...Select...语句改成该方法。
这样的吧,而且要保证两个子查询中得到的值是唯一的