我有以下SELECT,我无法开始工作:
SELECT COUNT(userid) FROM login
WHERE 17 < YEAR(DATE_SUB(NOW(), INTERVAL TO_DAYS(profile_birthdate) DAY)
AND 46 > YEAR(DATE_SUB(NOW(), INTERVAL TO_DAYS(profile_birthdate) DAY);
以下工作正常,所以我知道YEAR方程式是合理的:
SELECT YEAR(DATE_SUB(NOW(), INTERVAL TO_DAYS(profile_birthdate) DAY))
AS age FROM login;
只是想知道如何让最好的人工作;那么,有两种类似的方式再重复YEAR方程吗?
三江源
答案 0 :(得分:1)
这只是错字。你错过了括号。
SELECT COUNT(userid) FROM login
WHERE 17 < YEAR(DATE_SUB(NOW(), INTERVAL TO_DAYS(profile_birthdate) DAY))
AND 46 > YEAR(DATE_SUB(NOW(), INTERVAL TO_DAYS(profile_birthdate) DAY));
答案 1 :(得分:1)
您可以在此查询中尝试BETWEEN,并且不要忘记丢失的关闭“)”
SELECT COUNT(userid) FROM login
WHERE YEAR(DATE_SUB(NOW(), INTERVAL TO_DAYS(profile_birthdate) DAY)) BETWEEN 17 AND 46