我有一个sql select查询,它将结果提取为:
login_count login_type
2000 iPhone
7000 browser
但我希望结果如下:
iphone_login browser_login
2000 7000
即。我想使用select查询将row1-col1提取为col1,将row2-col2提取为col2。
我的原始查询是
select count(login_count), login_type from log_table group by login_type;
谢谢, 拉夫
答案 0 :(得分:3)
试试这个:
SELECT
SUM( IF(login_type = 'iPhone', 1, 0) ) AS iphone_login,
SUM( IF(login_type = 'browser', 1, 0) ) AS browser_login
FROM log_table
答案 1 :(得分:0)
这是另一个在MySQL 和中也适用于其他dbms的选项。
select sum(case when login_type = 'iPhone' then 1 else 0 end) as iphone_login
,sum(case when login_type = 'browser' then 1 else 0 end) as browser_login
from log_table