|
发表于 2021-1-16 13:30
来自手机
|
显示全部楼层
with a as (select 组,数量,count(*) 次数,case when count(*)>1 then '<span style="background-color:yellow">'||数量||'green</span>' else 数量 end as 分数 from 学生成绩标示一维明细表 group by 组,数量),b as (select c.rowid,* from 学生成绩标示一维明细表 c join a using(组,数量)) select rowid,组,编号||姓名 姓名2,属性 列标签,分数 数据 from b order by 组
2维转1维吧
select 姓名,group_concat(distinct(case when 列标签='化学' then 数据 else null end)) as '化学',group_concat(distinct(case when 列标签='地理' then 数据 else null end)) as '地理',group_concat(distinct(case when 列标签='政治' then 数据 else null end)) as '政治',group_concat(distinct(case when 列标签='数
学' then 数据 else null end)) as '数学',group_concat(distinct(case when 列标签='物理' then 数据 else null end)) as '物理',group_concat(distinct(case when 列标签='生物' then 数据 else null end)) as '生
物',group_concat(distinct(case when 列标签='英语' then 数据 else null end)) as '英语',group_concat(distinct(case when 列标签='语文' then 数据 else null end)) as '语文' from (select 姓名,列标签,group_concat(数据,'/') 数据 from 人员名单一维表 group by 姓名,列标签) group by 姓名
再转2维
大概是这个思路,感觉还是比较绕,特别是 着色。。。。
|
|