Reputation: 143
I have this table p_payments
. The table has the columns payment_amount
, payment_status
and createdtime
:
p_payments
____________________________
payment_status varchar(25)
payment_amount decimal(7,2)
createdtime datetime
How can I create a query that will count the sum of the last 30 days of revenues WHERE payment_status = completed
?
My table
payments_status payment_amount createdtime
----------------------------------------------------------
Completed 1.00 2013-09-29 21:45:02
Denied 2.00
Failed 1.50
... etc
Upvotes: 0
Views: 1028
Reputation: 2112
SELECT SUM( p.`payment_amount` ) AS `total_payments`
FROM `payments` p
WHERE DATEDIFF(NOW(), p.createdtime) <= 30
AND p.payment_status = 'Completed'
Upvotes: 1
Reputation: 2013
SELECT Sum(payment_amount)
FROM p_payments
WHERE payments_status = 'completed'
AND createdtime >= Date_Sub(Curdate(), INTERVAL 30 day)
Upvotes: 3