我想要为一个特定的公司(代码为13
)计算以下内容:
- 总信用额度
- 已使用信用额度
- 已使用通话次数
我已计算出信用金额的总和(即总信用额度
),其为200+100+5000+100 = 5400
现在,我想要计算已使用信用额度
,计算方法如下:
200 + 100 + 5000 + 70 = 5370
值为70
,因为它来自最后一个包裹credit_amount
,其中100 - credit_remaining
30 = 70。
如您所见,如果recharge_date
日期大于当前日期,则包裹处于活动状态。因此,上面截图中当前的活动包裹是第一个。
如何找到已使用的积分?
在相同的情况下,总通话次数也将被使用...
200 / 0.24 = 833.33
100 / 0.24 = 416.667
5000 / 0.20 = 25000
70 / 0.30 = 233.33
所以“已用调用”将是上述总和,约为“26483.33”。 以下是我的查询代码,它并没有给出我需要的值:
SELECT (SELECT Sum(credit_amount)
FROM `company_credit`
WHERE `company_id` = 13) AS total_credit,
Sum(credit_amount / rate) AS used_calls,
Sum(credit_amount) AS used_credit
FROM `company_credit`
WHERE `company_id` = 13
AND recharge_date < Now()
ORDER BY `id` DESC
充值日期(recharge_date)
大于当前日期(current_date)
。 - Sagar Gangwal