`
sungang_1120
  • 浏览: 323488 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类

Mysql 列转行统计查询 、行转列统计查询

阅读更多

 

 

Mysql 列转行统计查询 、行转列统计查询

-- ----------------------------
-- Table structure for `TabName`
-- ----------------------------
DROP TABLE IF EXISTS `TabName`;
CREATE TABLE `TabName` (
  `Id` int(11) NOT NULL AUTO_INCREMENT,
  `Name` varchar(20) DEFAULT NULL,
  `Date` date DEFAULT NULL,
  `Scount` int(11) DEFAULT NULL,
  PRIMARY KEY (`Id`)
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8;

 

 

数据:

-- ----------------------------
-- Records of TabName
-- ----------------------------
INSERT INTO `TabName` VALUES ('1', '小说', '2013-09-01', '10000');
INSERT INTO `TabName` VALUES ('2', '微信', '2013-09-01', '20000');
INSERT INTO `TabName` VALUES ('3', '小说', '2013-09-02', '30000');
INSERT INTO `TabName` VALUES ('4', '微信', '2013-09-02', '35000');
INSERT INTO `TabName` VALUES ('5', '小说', '2013-09-03', '31000');
INSERT INTO `TabName` VALUES ('6', '微信', '2013-09-03', '36000');
INSERT INTO `TabName` VALUES ('7', '小说', '2013-09-04', '35000');
INSERT INTO `TabName` VALUES ('8', '微信', '2013-09-04', '38000');

 

 

-- ------------------------
-- 查看数据
-- ------------------------
SELECT  * from TabName ;

 

 
 
-- ------------------------
-- 列转行统计数据
-- ------------------------
SELECT Date ,
MAX(CASE NAME WHEN '小说' THEN Scount ELSE 0 END ) 小说,
MAX(CASE NAME WHEN '微信' THEN Scount ELSE 0 END ) 微信 
FROM TabName  
GROUP BY Date 
 
 

  

-- ------------------------
-- 行转列统计数据
-- ------------------------
 
select
    Date, group_concat(NAME,'总量:',Scount) as b_str from   TabName 
 group by Date
 
 
select Date,NAME, group_concat(NAME,'总量:',Scount) as b_str from   TabName 
 group by Date ,NAME

   

分享到:
评论

相关推荐

    mysql-行转列、列转行

    标题“mysql-行转列、列转行”涉及到的是MySQL中的两种主要转换技巧: 1. **行转列(Pivot)**: 行转列通常用于将多行数据转换为单行的多个列。在MySQL中,没有内置的PIVOT函数,但可以通过使用`CASE`语句配合`...

    MySQL查询把多列返回结果集拼装成一个字段

    mysql中有种可以通过join相关操作进行表与表之间的方式查询不同结果集,但是在一对多的情况下,关键查询的结果是多条的.例如:班级和学习的关系,我想很直观的看到班级和学生的情况,列表显示出班级的信息和班级的男生...

    mysql列转行以及年月分组实例

    在MySQL数据库中,数据处理时常会遇到将列转换为行的需求,这通常涉及到行转列(Pivot)操作。在给定的实例中,我们看到了如何实现这一操作以及结合年月进行分组统计的方法。这里我们将详细解释这些知识点。 1. **...

    sql 行专列 列转行 普通行列转换

    以下将详细探讨如何在SQL Server中进行行转列和列转行的操作。 1. **行转列(Pivot)** 行转列是将某一列的数据作为新表的列名,而其他列对应的数据则填充到这些新列中。在SQL Server中,可以使用`PIVOT`操作或`...

    mysql 列转行,合并字段的方法(必看)

    例如,当需要列出每个学生的所有课程和分数时,或者当需要统计每个部门的员工名单时,它能简化查询并提供清晰的结果。 最后,虽然可以指定`GROUP_CONCAT()`中的多个列,但通常情况下,指定一个列更有意义,因为它...

    列换行

    列转行通常可以通过SQL的聚合函数和子查询来实现,比如在MySQL中可以使用`GROUP_CONCAT`,在SQL Server中可以使用`STRING_AGG`,在PostgreSQL中可以使用`STRING_AGG`或`ARRAY_AGG`等。此外,Pandas库在Python中是一...

    php+mysql+dreamver编程入门

    在IT领域,PHP、MySQL和Dreamweaver是构建动态网站的三大核心技术,尤其对于...因此,无论你是零基础的编程爱好者,还是希望转行进入IT行业的学习者,"php+mysql+dreamver编程入门"都是一个值得投入时间和精力的起点。

    3个月转行数据分析师,你需要掌握这些内容.docx

    你需要知道如何运用描述性统计、推断性统计、假设检验等方法,以及基本的数据预处理和特征工程。 5. **项目经验**:理论知识需要通过实践来巩固。参与实际的数据分析项目,可以提高你的解决问题和决策制定能力。你...

    经典SQL脚本大全

    │ 列转行.sql │ 固定行列报表.sql │ 复杂交叉表.sql │ 复杂交叉表1.sql │ 多栏显示.sql │ 日期+星期+时间.sql │ 格式化报表.sql │ 横转竖-1.sql │ 横转竖-字段名.sql │ 横转竖-生成字段名.sql │ 横转竖....

    Sqlserver2000经典脚本

    │ │ └─其他 │ 交叉表--复杂名次.sql │ 交叉表-优先级处理.sql │ 交叉表分析.sql │ 分级汇总.sql │ 分组交叉表.sql │ 列转行.sql │ 固定行列报表.sql │ 复杂交叉...

    学生成绩管理系统.rar

    学生成绩管理系统是教育信息化领域中的重要组成部分,它能够高效地管理学生的学习成绩,方便教师、学生及家长进行查询、统计和分析。本系统采用Java作为开发语言,结合MySQL数据库进行数据存储,实现了登录、注册、...

    项目介绍8.docx 大数据项目+项目介绍+面试辅导

    他提到了如何从物流报关行业转行到软件测试,再进一步深入大数据开发。他的经验表明,跨领域的学习和适应新环境的能力是获得成功的关键。 【大数据基础设施规划】 在规划大数据项目时,首先要确定集群规模。主人公...

    基于Python的全国公考岗位及报考人数分析与可视化开题报告.doc

    此外,对于在校大学生和希望转行的工作者,这种快速、精准的信息获取方式能显著降低找工作的成本,提升就业效率。 在国内外研究现状方面,国外的公务员岗位往往具有稳定的职业前景和丰富的福利待遇,虽然竞争也存在...

    head first python全书带完整目录

    3. **数据库交互**:使用Python连接数据库(如MySQL、SQLite等),执行SQL命令,进行数据的增删改查操作。 4. **GUI图形界面开发**:利用Tkinter等库进行简单的图形界面应用程序开发。 #### 五、实战项目案例 1. *...

Global site tag (gtag.js) - Google Analytics