[英]Sub group of group in SQL
dealer desktop tablet
A 1 0
A 1 0
B 0 1
C 0 0
A 0 1
A 1 0
C 0 1
C 0 0
C 0 0
B 0 1
B 0 0
B 0 0
A 0 0
不太擅长SQL
我想在这里做的是
when desktop = 0 and tablet = 0
)和平板电脑的数量SELECT dealer, COUNT(*) FROM table
GROUP BY dealer
让我知道了经销商的数量,但根据标准,我不知道如何获得它。
我期望的是一排计数。
dealer | laptop | desktop | tablet
也许是这样的:
select dealer,
COALESCE(SUM(case when desktop = 0 and tablet = 0 then 1 end),0) as laptop,
COALESCE(SUM(case when desktop = 1 then 1 end),0) as desktop,
COALESCE(SUM(case when tablet = 1 then 1 end),0) as tablet
from test
group by dealer;
https://dbfiddle.uk/?rdbms=mysql_8.0&fiddle=47d3d7761784bda3b94413f6603e06f7
选择经销商,sum(desktop) 作为桌面,sum(tablet) 作为平板,sum(
首先,您必须为笔记本电脑创建另一列。 我只会使用 case when 声明,谷歌它以获取更多详细信息。
(选择*,案例(当台式机+平板电脑='0'然后'1'否则'0'结束)作为笔记本电脑来自____)
然后,您可以按经销商回调不同的金额和分组!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.