sql-行转列2(转置)

行转列的常规做法是,group by+sum(if())【或count(if())】

例题

表table如下:

DDate shengfu
2015-05-09
2015-05-09
2015-05-09
2015-05-09
2015-05-10
2015-05-10
2015-05-10

如果要生成下列结果, 该如何写sql语句?

DDate
2015-05-09 2 2
2015-05-10 1 2
sql 复制代码
--建表
create table table1(DDate string, shengfu string) ;
insert overwrite table table1 values ('2015-05-09', "胜"),
       ('2015-05-09', "胜"),
       ('2015-05-09', "负"),
       ('2015-05-09', "负"),
       ('2015-05-10', "胜"),
       ('2015-05-10', "负"),
       ('2015-05-10', "负");

select 
	DDate,
    ,SUM(case when shengfu = '胜' then 1 else 0 end) `胜`
    ,SUM(case when shengfu = '负' then 1 else 0 end) `负`
from table1
group by DDate;
相关推荐
豆芽脚脚4 小时前
MongoDB 导出和导入完整指南
数据库·mongodb
烧饼Fighting4 小时前
Mysql替换为瀚高数据库部分函数转换V4.5版本
数据库·mysql
上善若水_厚德载物4 小时前
Centos7 Mysql 5.7 读写分离
数据库·mysql
Mr__Miss5 小时前
Redis的持久化
数据库·redis·缓存
CCPC不拿奖不改名5 小时前
SQL基础(SQL小白教程):MySQL语句+环境一键搭建+面试习题
数据库·sql·计算机网络·mysql·oracle·面试·职场和发展
陈文锦丫5 小时前
JAVA面试
数据库·mysql
sunfove5 小时前
将 Python 仿真工具部署并嵌入个人博客
开发语言·数据库·python
冰清-小魔鱼7 小时前
各类数据存储结构总结
开发语言·数据结构·数据库
深藏bIue7 小时前
MongoDB 4.4.30安装、数据迁移
数据库·mongodb
benyuanone7 小时前
MySQL环境项目迁移成国产化达梦环境
数据库·mysql