谁能将union all之后的多条查询结果横向展示##mysql

问题遇到的现象和发生背景

在写脚本的时候,不知道如何将查询结果横向展示
######查询脚本
(SELECT cc.S_BANJI 班级,'语文',ROUND(AVG(cc.S_YUWEN), 1)tt FROM cjtj cc GROUP BY cc.S_BANJI HAVING COUNT(1)ORDER BY tt DESC LIMIT 9999)
UNION all
(SELECT cc.S_BANJI 班级,'数学',ROUND(AVG(cc.S_SHUXUE), 1)tt FROM cjtj cc GROUP BY cc.S_BANJI HAVING COUNT(1)ORDER BY tt DESC LIMIT 9999)
######原始表

img


######当前查询的结果

img

操作环境、软件版本等信息

mysql-8.0

尝试过的解决方法

查询结果已满足,未满足想要展现的效果

我想要达到的结果

img

看了上面的沟通,这玩意不是excel里面写写公式弄个透视表就出来了么。。。压根不用写什么程序呀。。。

另外,你如果要用sql,完全没必要列转行又转列呀,它本来就是列,你直接一个sql对每个科目的分数进行平均不就好了?

SELECT cc.S_BANJI 班级,
'语文' ,ROUND(AVG(cc.S_YUWEN), 1) 平均分,
'数学' ,ROUND(AVG(cc.S_SHUXUE), 1)  平均分, 
....--各科目
FROM cjtj cc GROUP BY cc.S_BANJI 

这是需要行转列的,班级id作为转换标识。

像这种问题,你应该放到前台呈现表格的地方去做
包括什么时候想滑动显示、分页显示,这些跟数据本身没有直接关系的功能,都应该是前端来处理的,而不要什么都交给后端去处理