zoukankan      html  css  js  c++  java
  • 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  <br><br>
     

      

    -- ------------------------
    -- 行转列统计数据
    -- ------------------------
    <br>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
  • 相关阅读:
    mybatis-generator.xml
    模板下载
    任务导出
    订单导出
    创建指定日期任务
    字符串的知识
    数组元素反转
    JVM 中知识
    Redis介绍
    JsonP
  • 原文地址:https://www.cnblogs.com/bigben0123/p/5413505.html
Copyright © 2011-2022 走看看