select  ACCT_MONTH,
area_desc,
TELE_TYPE,
BRAND,
sum(ONNET_USERS)ONNET_USERS,
sum(ACCT_USERS)ACCT_USERS,
sum(CALL_USERS) CALL_USERS,
sum(DEV_USERS)DEV_USERS,
sum(INC_ONNET_USERS)INC_ONNET_USERS,
sum(INC_ACCT_USERS)INC_ACCT_USERS,
sum(OUTNET_USERS1)OUTNET_USERS1,
sum(OUTNET_USERS2)OUTNET_USERS2,
sum(OUTNET_USERS3)OUTNET_USERS3,
sum(DEV_OUTNET_USERS)DEV_OUTNET_USERS,
SUM(INC_ACCT_USERS)/SUM(decode(DEV_USERS,0,1)) DEV_NNP,
sum(OUTNET_USERS2)/sum(decode(ONNET_USERS,0,1)) outnet_nnp
 from REPORT.REPORT_BRAND_DEV a,
DIM.DIM_AREA_NO b
WHERE a.area_no=b.area_no
and  acct_month=? 
 group by ACCT_MONTH,
area_desc,
TELE_TYPE, 
BRAND

解决方案 »

  1.   

    问题在:and  acct_month=?  
    ?代表什么变量
    使用java写的么还是其他语言,在绑定变量的时候,变量不可为空的。
      

  2.   

    acct_month=?   这这样写怎么行呢?
      

  3.   

    执行sql之前,没给‘?’正确赋值。
    也就是你的‘?’个数多于你在程序里的‘set’个数