oracle 查询示例-统计

一、按订单类型统计8月份内,各种类型订单的创建的数量、完成的数量。

--按订单类型统计8月份内,各种类型订单的创建的数量、完成的数量
select t.TYPEID,sum(t.create_num1) AS create_num,sum(t.create_done_num) AS create_done_num 
--t.create_num1:此处引用的列名称以第一个查询的列名为准
from (
	select two.TYPEID,count(two.WORKORDERID) AS create_num1,0 AS create_done_num from t_workorder two 
	 where two.CREATETIME >= to_date('2017-08','yyyy-MM') 
	 	AND two.CREATETIME < add_months(to_date('2017-08','yyyy-MM'),1)
	group BY two.TYPEID
	--单独执行结果:
	--111105460,3,0
	--111155044,1,0
  union all
	select two.TYPEID,0 AS create_num2,count(two.WORKORDERID) AS create_done_num from t_workorder two 
	 where two.CREATETIME >= to_date('2017-08','yyyy-MM') 
	 	AND two.CREATETIME < add_months(to_date('2017-08','yyyy-MM'),1) 
	 	AND two.STATE = 10
	group BY two.TYPEID
	--单独执行结果:
	--111105460,0,2
--union all结果:
--111105460,3,0
--111155044,1,0
--111105460,0,2
) t
group by t.TYPEID;
--group结果:
--111105460,3,2
--111155044,1,0

猜你喜欢

转载自tjy86.iteye.com/blog/2388087