示例数据: (tablename为col_index) 实现行列转换的统计结果:
SQL语句:
SELECT c2,
SUM(CASE when c3 正式 then 1 else 0 END) as "正式",
SUM(CASE when c3 临时 then 1 else 0 END) as "临时"
FROM col_index
GROUP BY c2
虽然SQL的case功能确…
select Name, sum(case when Subject语文 then Result end) as 语文, sum(case when Subject数学 then Result end) as 数学, sum(case when Subject物理 then Result end) as 物理, sum(case when Subject英语 then Result end) as 英语 from student group by Name
从MS Sql Server 2005微软就推出了pivot和unpivot实现行列转换,这极大的方便了我们存储数据和呈现数据。今天就对这两个关键字进行分析,结合实例讲解如何存储数据,如何呈现数据。
例如学生选课和成绩系统中就有一张表,该表存储了…
一、使用sum(case when)
废话不多说,直接上图 select projectDeclare_id, sum(case when seq0 then score1 else NULL end) as diyihang, sum(case when seq1 then score1 else NULL end) as diyihang, sum(case when seq2 then score1 e…
方法1
select name,
sum(case when course物理 then score else 0 end) as 物理,
sum(case when course英语 then score else 0 end) as 英语
from T1方法2 动态SQL命令的执行效率往往不高,因为动态拼接的原因,导致数据库(查询优化器&…
报表系统中经常需要行列转换,在 SQL Server 等数据库中可以用 PIVOT 、UNPIVOT 来实现,但是在 MySQL 数据库中却不支持,下面介绍 MySQL 中的行列转换的实现方法。
1.行转列
例如下面是数据库中的原始表格:
namesubjectscore张三…
XML现在已经成为一种通用的数据交换格式,它的平台无关性,语言无关性,系统无关性,给数据集成与交互带来了极大的方便。对于XML本身的语法知识与技术细节,需要阅读相关的技术文献,这里面包括的内容有DOM(Document Object Model),DTD(Document Type Definition),SAX(Simple API fo…