select
单位 = (CAST grouping(单位) WHEN 1 THEN '总计' ELSE 单位),
本科 = sum (CASE(学历 WHEN '本科' THEN 1 ELSE 0 END)),
硕士 = sum (CASE(学历 WHEN '硕士' THEN 1 ELSE 0 END)),
博士 = sum (CASE(学历 WHEN '博士' THEN 1 ELSE 0 END)),
总个数 = count(*)
from table
group by 单位 WITH ROLLUPfrom sql server未测试
单位 = (CAST grouping(单位) WHEN 1 THEN '总计' ELSE 单位),
本科 = sum (CASE(学历 WHEN '本科' THEN 1 ELSE 0 END)),
硕士 = sum (CASE(学历 WHEN '硕士' THEN 1 ELSE 0 END)),
博士 = sum (CASE(学历 WHEN '博士' THEN 1 ELSE 0 END)),
总个数 = count(*)
from table
group by 单位 WITH ROLLUPfrom sql server未测试
select
单位 = (CASE grouping(单位) WHEN 1 THEN '总计' ELSE 单位 END),
本科 = sum (CASE(学历 WHEN '本科' THEN 1 ELSE 0 END)),
硕士 = sum (CASE(学历 WHEN '硕士' THEN 1 ELSE 0 END)),
博士 = sum (CASE(学历 WHEN '博士' THEN 1 ELSE 0 END)),
总个数 = count(*)
from table
group by 单位 WITH ROLLUPfrom sql server未测试
单位 = (CASE grouping(单位) WHEN 1 THEN '总计' ELSE 单位 END),
本科 = sum (CASE 学历 WHEN '本科' THEN 1 ELSE 0 END),
硕士 = sum (CASE(学历 WHEN '硕士' THEN 1 ELSE 0 END),
博士 = sum (CASE 学历 WHEN '博士' THEN 1 ELSE 0 END),
总个数 = count(*)
from table
group by 单位 WITH ROLLUP
:)先加分