这是什么问题
我是这么理解的。不知道对不对。下面是sql server的写法,Oracle应该也是类似。
select time as 时间,sum(1)as 总数,sum(case when status=1 then 1 else 0 end) as 符合条件人数
from tb
group by time
表結構
create table test
(
cdate date,
flag varchar2(1)
)
記錄如下:
02-10月-09 0
22-10月-09 1
30-10月-09 1
02-11月-09 1
03-11月-09 0
04-11月-09 1
06-11月-09 1
09-11月-09 1
11-11月-09 0
SQL語句,列轉行
SELECT MONTH,COUNT(1) total,SUM(DECODE(FLAG,1,1)) good FROM (
SELECT TO_CHAR(CDATE,'YYYY-MM') MONTH,FLAG FROM TEST
)
GROUP BY MONTH
結果
2009-10 3 2
2009-11 6 4
看看行不行.