从一数据表中取得统计信息的值,大家帮忙看看如何写这个SQL啊。
如从下表TABLE1中取得统计值:
课程编号 课程名称 校区
------------------------------
00001 计算机 北院
00001 计算机 北院
00001 计算机 南院
00001 计算机 南院
00001 计算机 洛南
00001 计算机 洛南
想得到如下表TABLE2的统计结果:
课程编号 课程名称 次数 北院 南院 洛南
-----------------------------------------------
00001 计算机 6 2 2 2
请问大家这个SQL该如何写??
现在只有select 课程编号,课程名称,count(课程编号)as 次数 from table1 group by 课程编号,课程名称得出前三列的结果,但对于后面分校区该怎么写才能产生如table2??
3Q
如从下表TABLE1中取得统计值:
课程编号 课程名称 校区
------------------------------
00001 计算机 北院
00001 计算机 北院
00001 计算机 南院
00001 计算机 南院
00001 计算机 洛南
00001 计算机 洛南
想得到如下表TABLE2的统计结果:
课程编号 课程名称 次数 北院 南院 洛南
-----------------------------------------------
00001 计算机 6 2 2 2
请问大家这个SQL该如何写??
现在只有select 课程编号,课程名称,count(课程编号)as 次数 from table1 group by 课程编号,课程名称得出前三列的结果,但对于后面分校区该怎么写才能产生如table2??
3Q
给个静态交叉表的示例:
SELECT 课程编号,课程名称,count(课程编号)as 次数,
count(CASE 校区 WHEN '北院' THEN '' ELSE NULL END) AS [北院],
count(CASE 校区 WHEN '南院' THEN '' ELSE NULL END) AS [南院],
count(CASE 校区 WHEN '洛南' THEN '' ELSE NULL END) AS [洛南]
FROM table1 GROUP BY 课程编号,课程名称