sql求合计值(rollup函数应用)

时间:2020-07-22 11:46:11   收藏:0   阅读:119
CREATE TABLE `test1` (
  `id` varchar(11) DEFAULT NULL,
  `name` varchar(255) DEFAULT NULL,
  `count` varchar(255) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

CREATE TABLE `test2` (
  `id` varchar(11) DEFAULT NULL,
  `name` varchar(255) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

技术图片技术图片

 

-- oracle、mysql通用
select case when t2.id = 0 then 合计 else t2.id end id, sum(count) count from test1 t1,test2 t2 
where t1.id = t2.name group by t2.id;
-- mysql
select case when id is null then 合计 else id end id, sum(count) from test1 GROUP BY id with ROLLUP;

-- oracle
select id,sum(count) from test1 group by rollup(id);

 

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!