select mailtype,sum(decode(status,'发货',decode(greatest(tjrq,'2005-10-27'),'2005-10-27','0',ddje),'0')) as tjje from dailyorderct
group by mailtype
group by mailtype
解决方案 »
- oralce二个表关联查询的小问题,在线等
- JOB中interval设置为空,会怎么样?
- 请教下大数据量数据库存储设计
- oracle分页查询效率问题探讨
- ORACLE 9i 和 10i 的区别(GROUP BY)
- 一个SQL多表联合更新的问题
- 求一sqlload中控制文件内容,请近来看看!
- 在线等待求教,oracle9.2.0.1安装问题
- 帮我看一下这个JOB错在哪里?每隔7天系统执行p_sysdeleteinfo存储过程。
- classes12.zip和classes12.jar的区别
- SQL Plus中输入的主机字符串应该输入什么啊,在线等待
- 如何把infor mix中很多表,导入oracle数据库中
select mailtype,sum(decode(status,'发货',decode(greatest(tjrq,'2005-10-27'),'2005-10-27','0',ddje),'0')) as tjje from dailyorderct
group by mailtype
这个是按日期段显示每日的tjje 不仅仅是小于 2005-10-17的了!
我想要的是通过判断tjrq来统计不同时期的产品金额,如果统计日期在2005-10-27的,就让数据显示0
select mailtype,sum(decode(status,'发货',ddje,'0')) as tjje from dailyorderct
where tjrq <'2005-10-31'
group by mailtype
结果: mailtype tjje
EMS代收货款 1000
大田配送 200
如果选择的日期参数是2005-10-26,那就显示
mailtype tjje
EMS代收货款 0
大田配送 0
select mailtype,sum(decode(status,'发货',decode(least(tjrq,'2005-10-27'),'2005-10-27','0',ddje),'0')) as tjje from dailyorderct
group by mailtype