mysql - SQL 方程当前减去其他年份?

标签 mysql sql phpmyadmin

我有一张表格,上面有医生的姓名和生日年份。在索引页面上,我只需要显示 40 岁以下的医生。我需要从当年减去生日年份并仅显示 40 以下的结果...

SELECT * FROM `doctor` WHERE dateadd(year, `date_birthday`, getdate())

我尝试将日期 sa 日期时间转换为日期为年份,但每次都返回 NULL

SELECT id,CAST((CURDATE()-date_birthday) AS DATE) AS difference FROM doctor

最佳答案

您没有指定数据库并且格式不一致。 ANSI 标准语法为:

SELECT d.*
FROM doctor d
WHERE date_birthdate >= CURRENT_DATE - INTERVAL '40 YEAR';

日期/时间函数因数据库而异,因此这可能不适用于您的特定数据库。因此,需要一个数据库标签。

例如,在 MySQL 中,您可以删除单引号:

SELECT d.*
FROM doctor d
WHERE date_birthdate >= CURRENT_DATE - INTERVAL 40 YEAR;

关于mysql - SQL 方程当前减去其他年份?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50528932/

相关文章:

sql - Postgres 触发器不更新指定的列

sql - Pl/SQL- 从查询中获取列名

mysql - phpMyAdmin "No database selected"MySQL

apache - 如何在Php中将上传的文件移动到另一个主机

mysql - 连接两个表,结果显示在表 2 的 min() 字段上

php - 获取 ID 数组,然后通过这些 ID 查询不同的帖子类型

php - MySQL 搜索包含空格的值返回空结果(没有行)

mysql更新查询检查数据是否更新或匹配

phpmyadmin 显示代码而不是网页

mysql - Laravel 5.8 多对多关系使用数据透视表的自定义列名称