mysql - 查看数据库 MySQL 中的计算值

标签 mysql

 SELECT FirstName, DateOfBirth, CURDATE(),
 (YEAR(CURDATE())-YEAR(DateOfBirth))
 - (RIGHT(CURDATE(),5)<RIGHT(DateOfBirth,5))
 AS age
 FROM basicinformation;

这是我的查询,但我想要的是在获得年龄后我必须只查看 18 岁以上的人。但是如果我添加年龄大于或等于 18 岁的地方。我会收到查询错误。这可能是因为 age 是“as”(临时字段名)而不是真正的字段名。我希望有人能帮助我,因为如果他们已经准备好投票,我会用它来自动检查年龄。

最佳答案

只需添加 having age >=18

SELECT FirstName, DateOfBirth, CURDATE(),
 (YEAR(CURDATE())-YEAR(DateOfBirth))
 - (RIGHT(CURDATE(),5)<RIGHT(DateOfBirth,5))
 AS age
 FROM basicinformation
HAVING age>=18;

关于mysql - 查看数据库 MySQL 中的计算值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14785967/

相关文章:

php - 使用 MySQL 5.6 在 JSON 对象中搜索属性

mysql - 如何替换 Mysql 中 SELECT 语句的输出?

mysql - 如何在不执行 MySQL 查询的情况下检查它是否有效?

mysql - 使用 docker-compose 连接 Tomcat 容器和 Mysql 容器

mysql - 如何创建此权利加入

mysql - 根据特定条件选择唯一行

PHP MySQL 语句 - "select as"和 "where"

php - 循环数组没有给出所需的结果

php - PHP、MySQL 登录错误

php - 显示数据库中的图像,使用 php 不显示图片