我有一个“订单”表和一个“记录”表。订单表包含以下列:
order_id order_date seller order_price
记录表具有以下列:
order_id record_created_at record_log
record_log显示订单是“已批准”还是“已拒绝”,我试图找出已批准订单的百分比(已批准订单的数量/订单总数)以及已批准的订单金额(以美元为单位)的百分比($每个卖方的批准订单数量/订单总金额)。
我正在使用以下查询查询已批准数量的订单百分比:
(
SELECT COUNT(raw_log = 'order approved')/COUNT(*)
FROM logs_table l
WHERE l.order_id = o.order_id
) AS approval_rate_by_count
这给了我好坏参半的结果,因为有些数字是正确的,而有些数字不是。我也不确定如何使用相同的逻辑来获得以美元金额表示的批准订单百分比。
提前致谢。
使用SUM
而不是COUNT
超过条件raw_log = 'order approved'
:
SELECT SUM(raw_log = 'order approved')/COUNT(*)
FROM logs_table
在mysql中,true
is 1
和false
is 0
,所以对一个条件求和就算它是多少次true
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句