下面是一个表的数据:
----------------------
期 课程编号 每班人数 开设班数 教材费(每人) 培训费(每人)
-- -------- -------- -------- ----------- ------------
0601 2053265 25 3 10 20
0601 2084568 20 2 5 15
0601 2205986 15 2 20 30
0602 8956898 10 3 10 10
0602 7562455 10 5 15 10
------------------------------------------------------------------------------------
下面求一句sql语句生成如下结果:期 课程数量 在读人数 应收费用
-- -------- --------- --------
0601 3 145 4500
0602 2 80 1850
------------------------------------------------------------------------
----------------------
期 课程编号 每班人数 开设班数 教材费(每人) 培训费(每人)
-- -------- -------- -------- ----------- ------------
0601 2053265 25 3 10 20
0601 2084568 20 2 5 15
0601 2205986 15 2 20 30
0602 8956898 10 3 10 10
0602 7562455 10 5 15 10
------------------------------------------------------------------------------------
下面求一句sql语句生成如下结果:期 课程数量 在读人数 应收费用
-- -------- --------- --------
0601 3 145 4500
0602 2 80 1850
------------------------------------------------------------------------
期,
sum(课程编号) as 课程数量,
sum(每班人数*开设班数) as 在读人数,
sum(每班人数*开设班数*([教材费(每人)]+[培训费(每人)]) as 应收费用
GROUP BY 期
(select 期 , count(*) as 课程数量 from tb group by 期) as a
(select 期 , sum(每班人数*开设班数(教材费(每人)+培训费(每人))) as 应收费用 from tb group by 期) b
where a.期 = b.期
count(课程编号) as 课程数量,
sum(每班人数*开设班数) as 在读人数,
sum(每班人数*开设班数*(教材费+培训费)) as 应收费用
from T
group by 期
(select 期 , count(*) as 课程数量 from tb group by 期) as a
(select 期 , sum(每班人数*开设班数) as 在读人数, sum(每班人数*开设班数(教材费(每人)+培训费(每人))) as 应收费用 from tb group by 期) b
where a.期 = b.期
from test group by 期