Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can I find the percentage of my users whose birth date is between 1980 and 1996.

i'm trying to find the percentage of my users whose birth date is between 1980 and 1996.

I can't find how to do it:

SELECT Sum
(WHEN userBirthDate BETWEEN '1980/01/01' AND '1996/12/31'
THEN 1 ELSE 0 END) * 100 / Count(userID) as total
FROM user

The error mysql returns is syntax:

 ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHEN userBirthDate BETWEEN '1980/01/01' AND '1996/12/31' THEN 1 ELSE 0)' at line 1

how can i do it?

Thank you in advance

like image 764
user1256477 Avatar asked Jan 24 '26 11:01

user1256477


2 Answers

SELECT Sum(case WHEN userBirthDate BETWEEN '1980/01/01' AND '1996/12/31'
                THEN 1 
                ELSE 0 
       END) * 100 / Count(userID) as total
FROM `user`

or just

SELECT Sum(userBirthDate BETWEEN '1980/01/01' AND '1996/12/31') * 100 / Count(userID) as total
FROM `user`
like image 177
juergen d Avatar answered Jan 26 '26 04:01

juergen d


SELECT Sum
(IF( userBirthDate BETWEEN '1980/01/01' AND '1996/12/31', 1 , 0 )) * 100 / Count(userID) as total
FROM user
like image 40
Shehzad Bilal Avatar answered Jan 26 '26 03:01

Shehzad Bilal



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!