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;
相关推荐
byzh_rc4 分钟前
[模式识别-从入门到入土] 支持向量积SVM
数据库·人工智能·算法
程序员水自流4 分钟前
MySQL常用SQL语法及参数详细介绍(新手经验书)
java·数据库·sql·mysql·oracle
Rhys..4 分钟前
js-三元运算符
前端·javascript·数据库
倔强的石头1065 分钟前
金仓数据库 MongoDB 兼容:多模融合下的架构之道与实战体验
数据库·mongodb·架构·kingbase
coder_xiaoyou5 分钟前
MYSQL ReadView
数据库
川石课堂软件测试8 分钟前
软件测试的白盒测试(二)之单元测试环境
开发语言·数据库·redis·功能测试·缓存·单元测试·log4j
micro_cloud_fly9 分钟前
如何使用 IDEA自带的数据库工具导出 pgsql 的DDL
数据库
nvd1112 分钟前
在 Cloud SQL for PostgreSQL 上启用 pgvector
数据库·postgresql
老友@19 分钟前
MySQL:从 ACID 到 MVCC 与主从复制
数据库·mysql·事务·mvcc·主从复制·acid·2pc
TG:@yunlaoda360 云老大19 分钟前
华为云国际站代理商昇腾芯片硬适配的具体落地场景有哪些?
数据库·人工智能·华为云