我已经编写了这个查询来获取我的数据,并且所有数据都很好。
我有一列有Pass或Fail。我想计算失败的预订数量百分比,并将其输出为单个值。
我将不得不写另一个查询以显示一个数字。
答案 0 :(得分:1)
也许这个?你真的没什么可说的:
SELECT
SUM(CASE
WHEN trip_rating.rating <= 3 OR
TIMESTAMPDIFF(MINUTE, booking_activity.activity_time, booking.pick_up_time) < 0
THEN 1.00 ELSE NULL END
) / COUNT(*)
FROM ...
答案 1 :(得分:0)
<强>查询强>
select
concat(
cast(
(
sum(case when t.Decision = 'Fail' then 1 else 0 end) / count(*)) * 100
as varchar(3)
), '%') as `fail rate`
from
(
select ........
case ........ end as Decision
)t;