mysql - SQL 年龄检查到当前日期

标签 mysql sql database date

我只是想选择30岁以下的人。 表:

+--------+-------+------------+
| fname  | lname |    dob     |
+--------+-------+------------+
| Steven | Carl  | 1964-07-07 |
| John   | Handy | 1980-06-03 |
| Mary   | Jane  | 2000-11-12 |
+--------+-------+------------+

我尝试过做类似的事情,我知道检查今天的日期是错误的。

CAST(CURRENT_TIMESTAMP AS DATE)

也许我可以用 30 减去年份并检查该日期或类似的内容?

SELECT  fname, lname,  FROM Persons
WHERE dob >= CAST(CURRENT_TIMESTAMP AS DATE);

最佳答案

使用日期算术:

select * from persons where dob + interval 30 year > curdate()

关于mysql - SQL 年龄检查到当前日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59275601/

相关文章:

mysql - 如何在 SQL 中删除重复(两行的混合)行?

SQL JOIN 困难 - 似乎需要一种限制连接条件中行的方法

java - Nest 聚合搜索请求

ruby-on-rails - 营业时间与员工时间关系的推荐数据库设计

mysql - 如何处理 mySQL 中不明确的字段

mysql - 我的查询说我的专栏不存在

MySQL 左连接 : null elements be filtered by where

php - 如何设置每日 php 函数或 mysql 查询

mysql - 带 GROUP BY 和条件的 SQL 查询

android - 使用 Room Database(Room Persistence Library) 创建触发器