Java 在MySQL中透视表
如何在MySQL中透视表 我有一个mysql数据表,如下所示Java 在MySQL中透视表,java,mysql,mysql-workbench,Java,Mysql,Mysql Workbench,如何在MySQL中透视表 我有一个mysql数据表,如下所示 **Student_id Student_name Subject Activity Marks** 1 Raja Maths null 44 1 Raja IT practical 33 1 Raja Tamil null
**Student_id Student_name Subject Activity Marks**
1 Raja Maths null 44
1 Raja IT practical 33
1 Raja Tamil null 22
1 Raja Histry null 54
2 Ganga Maths null 33
2 Ganga IT null 22
2 Ganga Histry null 44
2 Ganga Tamil null 89
所以我需要像下面那样旋转我的桌子
Student_id Student_name Mths IT Tamil Histry Activity
1 Raja 44 33 22 54 practical
2 Ganga 33 22 89 44 null
通过使用stackoverflow,我尝试了很多方法,但是我无法实现目标,需要mysql专家的帮助,我能够通过@Raymond Nijland的建议完成我的任务
我利用@Raymond Nijland的建议完成了我的任务 历史是写错的。。请检查您的表格数据
历史是写错的。。请检查您的表数据。考虑在应用程序代码(java)中显示数据“我尝试了许多方法使用stackoverflow,但未能达到目标”,使用
MAX()
/MIN()
进行数据透视更容易,因为这些函数允许返回anny数据类型,其中SUM()<代码>只适用于数字,我尝试了(),但不能,将尝试用最大()(我不明白你所需要的输出为什么4个标记显示,只有一个活动和选择哪个活动?)看看这篇文章-考虑在应用程序代码(java)中进行数据显示。“通过使用stackoverflow,我尝试了许多方法,但我无法实现目标,”使用MAX()
/MIN()
进行数据透视更容易,因为这些函数允许返回anny数据类型,其中SUM()
仅适用于数值是的,我尝试了SUM(),但无法,将尝试使用MAX())我不明白你需要的输出为什么显示4个标记,只显示一个活动以及选择了哪个活动?看看这篇文章-这将给出MySQL上的语法错误,因为这是SQL Server(MSSQL)查询。这将给出MySQL上的语法错误,因为这是SQL Server(MSSQL)查询。
select *
from
(
select Student_id, Student_name, Subject, Activity, Marks
from #your_table
) src
pivot
(
sum(Marks)
for Subject in ([Maths], [IT], [Tamil], [Histry])
) piv;