zoukankan      html  css  js  c++  java
  • mysql中的with rollup得到group by的汇总信息

    使用mysql中的with rollup可以得到每个分组的汇总级别的数据:

    表如下:

    CREATE TABLE `test3` (
      `id` int(5) unsigned NOT NULL AUTO_INCREMENT,
      `name1` varchar(10) DEFAULT NULL,
      `name2` varchar(10) DEFAULT NULL,
      `cnt` int(2) DEFAULT NULL,
      PRIMARY KEY (`id`)
    ) ENGINE=MyISAM AUTO_INCREMENT=7 DEFAULT CHARSET=latin1

    数据为:

    1 rank1 subrank1 1
    2 rank1 subrank1 2
    3 rank2 subrank1 1
    4 rank2 subrank2 2
    5 rank3 subrank1 1
    6 rank1 subrank2 3

    查询(1):

    select name1,name2,sum(cnt) from test3 group by name1,name2

    得到结果:

    rank1 subrank1 3
    rank1 subrank2 3
    rank2 subrank1 1
    rank2 subrank2 2
    rank3 subrank1 1

    查询(2):

    select name1,name2,sum(cnt) from test3 group by name1,name2 with rollup

    得到结果:

    rank1 subrank1 3
    rank1 subrank2 3
    rank1 NULL        6
    rank2 subrank1 1
    rank2 subrank2 2
    rank2 NULL        3
    rank3 subrank1 1
    rank3 NULL        1
    NULL  NULL        10

    可以看到多出了汇总信息

  • 相关阅读:
    map
    01背包和完全背包 POJ
    并查集 计算节点数量
    set
    map,vector,queue 图 综合运用
    并查集 hdu-1325 Is It A Tree?
    js中的ajax
    java算法
    MySql在Window上的安装
    微信开发账号要求
  • 原文地址:https://www.cnblogs.com/isungge/p/5646830.html
Copyright © 2011-2022 走看看