我正在尝试找出我的用户中出生日期在1980到1996年之间的百分比。
我不知道该怎么做:
SELECT Sum
(WHEN userBirthDate BETWEEN '1980/01/01' AND '1996/12/31'
THEN 1 ELSE 0 END) * 100 / Count(userID) as total
FROM user
mysql返回的错误是语法:
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
我该怎么做呢?
提前谢谢你
发布于 2012-07-03 10:29:21
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`
或者只是
SELECT Sum(userBirthDate BETWEEN '1980/01/01' AND '1996/12/31') * 100 / Count(userID) as total
FROM `user`
发布于 2012-07-03 10:30:28
SELECT Sum
(IF( userBirthDate BETWEEN '1980/01/01' AND '1996/12/31', 1 , 0 )) * 100 / Count(userID) as total
FROM user
发布于 2012-07-03 10:32:31
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
https://stackoverflow.com/questions/11308985
复制相似问题