cao6623696 发表于 2007-4-20 09:50

ORCLE中SQL语句这句是什么意思呀!

SELECT '合计' areaname,SUM(c1) c1,SUM(c2) c2,SUM(c3) c3,SUM(c4) c4,SUM(c5) c5,SUM(c6) c6,SUM(c7) c7,SUM(c8) c8,SUM(c9) c9,SUM(c10) c10,SUM(c11) c11,SUM(c12) c12,SUM(c13) c13,SUM(c14) c14,SUM(c15) c15,SUM(c16) c16,SUM(c17) c17,SUM(c18) c18,SUM(c19) c19,SUM(c20) c20,SUM(c21) c21,'910' oldareaid<BR>    FROM(<BR>            SELECT MAX(areaname) areaname,<BR>               SUM(DECODE(classname,'SDH',fee,0)) c1,<BR>               SUM(DECODE(classname,'出租网元',fee,0)) c2,<BR>               SUM(DECODE(classname,'SDH',fee,0)+DECODE(classname,'出租网元',fee,0)) c3,<BR>               SUM(DECODE(classname,'ATM',fee,0)) c4,<BR>               SUM(DECODE(classname,'FR',fee,0)) c5,<BR>               SUM(DECODE(classname,'MPLSVPN',fee,0)) c6,<BR>               SUM(DECODE(classname,'DDN',fee,0)) c7,<BR>               SUM(DECODE(classname,'设备出租',fee,0)) c8,<BR>               SUM(DECODE(classname,'设备代维',fee,0)) c9,<BR>               SUM(DECODE(classname,'ATM',fee,0)+DECODE(classname,'FR',fee,0)+DECODE(classname,'MPLSVPN',fee,0)+DECODE(classname,'DDN',fee,0)+DECODE(classname,'设备出租',fee,0)+DECODE(classname,'设备代维',fee,0)) c10,<BR>               SUM(DECODE(classname,'互联网专线普通',fee,0)) c11,<BR>               SUM(DECODE(classname,'互联网专线汇聚',fee,0)) c12,<BR>               SUM(DECODE(classname,'互联网专线普通',fee,0)+DECODE(classname,'互联网专线汇聚',fee,0)) c13,<BR>               SUM(DECODE(classname,'XDSL',fee,0)) c14,<BR>               SUM(DECODE(classname,'LAN',fee,0)) c15,<BR>               SUM(DECODE(classname,'其他',fee,0)) c16,<BR>               SUM(DECODE(classname,'XDSL',fee,0)+DECODE(classname,'LAN',fee,0)+DECODE(classname,'其他',fee,0)) c17,<BR>               SUM(DECODE(classname,'服务器托管',fee,0)) c18,<BR>               SUM(DECODE(classname,'机架租赁',fee,0)) c19,<BR>               SUM(DECODE(classname,'服务器托管',fee,0)+DECODE(classname,'机架租赁',fee,0)) c20,<BR>               SUM(DECODE(classname,'合计',fee,0)) c21,<BR>               oldareaid<BR>        FROM(<BR>            SELECT MAX(areaname) areaname,SUM(fee) fee,oldareaid,classname<BR>            FROM REPORT_INCOME<BR>            WHERE billingcycleid='200702'<BR>            GROUP BY oldareaid,classname<BR>            )<BR>        GROUP BY oldareaid<BR>        )<BR>    )<BR>    ORDER BY oldareaid<BR><BR>语句中DECODE以及后面参数是干什么的呀?我只知道SUM是统计的

hzjwcx 发表于 2007-4-23 08:31

給你說明一個:DECODE(classname,'出租网元',fee,0)<BR>classname這個欄位的值是:出租网元 時 ,就顯示fee 否則就是0

feiya 发表于 2007-4-24 13:06

<P>愿来如此~<BR></P>

页: [1]

编程论坛