我的表结构如下所示,预期的输出如下所示:
性别-计数值
男-9
女-4
预期输出:
男-女
9-4
发布于 2015-10-29 06:26:52
你可以这样做:
SELECT
max(case when `gender` = 'Male' then countvalue end) as Male,
max(case when `gender` = 'Female' then countvalue end) as Female
FROM test
SQL小提琴演示
发布于 2015-10-29 06:34:07
create table k
( gender varchar(20) not null,
theCount int not null
);
insert k(gender,theCount) values ('male',9),('female',4);
select a.theCount as male, b.theCount as female
from k a
cross join k b
where a.gender='male' and b.gender='female';
+------+--------+
| male | female |
+------+--------+
| 9 | 4 |
+------+--------+
交叉连接是笛卡尔积。但是1行接1行就是结果集中的1行。
https://stackoverflow.com/questions/33407026
复制相似问题