• Rollup and cube


    CREATE TABLE #temp 
      ( 
         name  VARCHAR(20), 
         job   VARCHAR(20), 
         age   INT, 
         COUNT INT 
      ) 
     
    INSERT #temp 
    SELECT '周杰伦','歌手',25,2010 
    UNION ALL 
    SELECT '周杰伦','歌手',26,1444 
     
    INSERT #temp 
    SELECT '刘德华','演员',40,1101 
    UNION ALL 
    SELECT '刘德华','演员',45,4664 
     
    INSERT #temp 
    SELECT '成龙','导演',55,3456 
     
     
    INSERT #temp 
    SELECT '林俊杰','歌手',54,876 
    UNION ALL 
    SELECT '林俊杰','歌手',23,5433 
    UNION ALL 
    SELECT '林俊杰','歌手',45,3345  
     
     
     
    select  *  from  #temp 
    /* 
    (8 行受影响) 
    name    job    age    COUNT 
    周杰伦    歌手    25    2010 
    周杰伦    歌手    26    1444 
    刘德华    演员    40    1101 
    刘德华    演员    45    4664 
    成龙    导演    55    3456 
    林俊杰    歌手    54    876 
    林俊杰    歌手    23    5433 
    林俊杰    歌手    45    3345 
    */ 
     
    SELECT name,job,MAX(age) AS age,SUM(COUNTAS COUNT 
    FROM   #temp 
    GROUP  BY name,job 
     
    /* 
    (4 行受影响) 
     
    name    job    age    count 
    成龙    导演    55    3456 
    林俊杰    歌手    54    876 
    周杰伦    歌手    25    2010 
    刘德华    演员    40    1101 
    */ 
    SELECT name,job,MAX(age) AS age,SUM(COUNTAS COUNT 
    FROM   #temp 
    GROUP  BY name,job WITH ROLLUP 
     
    /* 
    (9 行受影响) 
    name    job    age    count 
    成龙    导演    55    3456 
    成龙    NULL    55    3456 
    林俊杰    歌手    54    876 
    林俊杰    NULL    54    876 
    刘德华    演员    40    1101 
    刘德华    NULL    40    1101 
    周杰伦    歌手    25    2010 
    周杰伦    NULL    25    2010 
    NULL    NULL    55    7443 
    */ 
     
     
      
     
    --------------------------------------------------------------------------------------- 
     
     
      
    SELECT name,job,MAX(age) AS age,SUM(COUNTAS COUNT 
    FROM   #temp 
    GROUP  BY name,job WITH cube 
      
    /* 
    (12 行受影响) 
    name    job    age    COUNT 
    成龙    导演    55    3456 
    NULL    导演    55    3456 
    林俊杰    歌手    54    9654 
    周杰伦    歌手    26    3454 
    NULL    歌手    54    13108 
    刘德华    演员    45    5765 
    NULL    演员    45    5765 
    NULL    NULL    55    22329 
    成龙    NULL    55    3456 
    林俊杰    NULL    54    9654 
    刘德华    NULL    45    5765 
    周杰伦    NULL    26    3454 
    */ 
      
      
  • 相关阅读:
    Vimdiff的用法 简单
    VIM插件使用 简单
    张子阳:大道至简,职场上做人做事做管理 简单
    VIM常用快捷键整理 简单
    从程序员到项目经理(四):外行可以领导内行吗 简单
    从程序员到项目经理(三):认识项目经理 简单
    余波:技术人员如何走出职业迷茫 简单
    技术路线的选择重要但不具有决定性 简单
    转:我在Facebook工作的十大经验分享 简单
    linux下vim的编译以及终端乱码的解决方案 简单
  • 原文地址:https://www.cnblogs.com/qanholas/p/1874441.html
Copyright © 2020-2023  润新知