MySQL Forums
Forum List  »  Newbie

Re: SELECT Records using multiple ciritria
Posted by: Gary Ehrenfeld
Date: October 31, 2016 09:55AM

The query works but returns the wrong average.

I can run this query
SELECT
type_entry,
COUNT(CASE WHEN DATEDIFF(NOW(), date) < 30 THEN value END) as val_count1,
FLOOR(SUM(CASE WHEN DATEDIFF(NOW(), date) < 30 THEN value END)) as sum_glu1,
COUNT(CASE WHEN DATEDIFF(NOW(), date) < 14 THEN value END) as val_count2,
FLOOR(SUM(CASE WHEN DATEDIFF(NOW(), date) < 14 THEN value END)) as sum_glu2,
COUNT(CASE WHEN DATEDIFF(NOW(), date) < 7 THEN value END) as val_count3,
FLOOR(SUM(CASE WHEN DATEDIFF(NOW(), date) < 7 THEN value END)) as sum_glu3
FROM all_data
WHERE DATEDIFF(NOW(), date) < 30 AND type_entry = 'Glucose'
GROUP BY type_entry;
and get the correct numbers.

I tried to change the DATEDIFF(NOW(), date) to DATEDIFF(@last, date) but it errors out.

Options: ReplyQuote


Subject
Written By
Posted
Re: SELECT Records using multiple ciritria
October 31, 2016 09:55AM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.