Php 无法使用between运算符获取输出

Php 无法使用between运算符获取输出,php,mysql,Php,Mysql,我刚刚接触php和mysql;我桌上有一个fname,lname,bdate;我有一个mysql查询,从出生日期开始提取年龄,保存在mysql中 SELECT FNAME, LNAME, TIMESTAMPDIFF(YEAR, BDATE, CURDATE()) AS AGE FROM perinfo 我想做的是按年龄组过滤输出,比如10到19岁,20到29岁等等。我做了一些研究,发现Betwe operator可以做到,但我想知道为什么它不起作用;我把它添加到我的查询中,但它没有给我任何输

我刚刚接触php和mysql;我桌上有一个fname,lname,bdate;我有一个mysql查询,从出生日期开始提取年龄,保存在mysql中

 SELECT FNAME, LNAME, TIMESTAMPDIFF(YEAR, BDATE, CURDATE()) AS AGE FROM perinfo
我想做的是按年龄组过滤输出,比如10到19岁,20到29岁等等。我做了一些研究,发现Betwe operator可以做到,但我想知道为什么它不起作用;我把它添加到我的查询中,但它没有给我任何输出

 WHERE AGE BETWEEN 10 and 19
可能是因为年龄不是我表中的一列,只是为我创建的查询分配的?有没有可能的方法来纠正这个问题?非常感谢您的帮助

谢谢

不允许在WHERE子句中引用列别名,因为在执行WHERE子句时可能尚未确定列值

表示不能在
where
子句中使用别名。使用

SELECT FNAME, LNAME, TIMESTAMPDIFF(YEAR, BDATE, CURDATE()) AS AGE 
FROM perinfo
WHERE TIMESTAMPDIFF(YEAR, BDATE, CURDATE()) BETWEEN 10 and 19