gpt4 book ai didi

MySQL计算每个客户的在线订单与电话订单的百分比

转载 作者:太空宇宙 更新时间:2023-11-03 11:24:26 24 4
gpt4 key购买 nike

我有一个 MySQL 数据库,其中包含三个表 CustomerOrderOrderType,其中订单类型是在线或电话。

我需要按订单类型计算每个客户的订单百分比。

CUSTOMER
id
name

ORDER
id
customer_id
ordertype_id

ORDERTYPE
id
name

理想情况下,结果应该是:

CUSTOMER   |    ONLINE     |    PHONE
name 20% 80%
name 45% 55%

最佳答案

您可以使用条件聚合:

select o.customer_id,
100 * avg( ot.name = 'ONLINE' ) as online_percent,
100 * avg( ot.name = 'PHONE' ) as phone_percent
from orders o join
ordertype ot
on o.ordertype_id = ot.id
group by o.customer_id;

如果你想要客户名称而不是 id,你可以添加一个 join

关于MySQL计算每个客户的在线订单与电话订单的百分比,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55691308/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com