-2
CREATE TABLE players(   id INT,     birthdate DATE,     PRIMARY KEY(id) );

SELECT * FROM players WHERE DATE-birthdate > 40;

生日的值应采用以下格式:10-jun-1964

使用第二个 SQL 语句,我想从40 岁以上的表玩家中选择所有。

我知道这两个陈述是不正确的,但我已经尽可能地构建它们,以便让您了解它需要如何。

有没有人可以帮助我生日字段应该是什么确切类型,并修复我的第二个语句?我一直在寻找解决方案,这有点令人困惑。

非常感谢!对此,我真的非常感激。

4

2 回答 2

0

使用日期很好。您可以通过从今天起减去40 年来检查。

于 2013-09-18T10:47:28.527 回答
0

DATE是在 MySQL 中存储日期的正确数据类型。使用DATEF_FORMAT函数以您选择的格式输出日期(您需要'%d-%b-%Y')。

查找 40 岁以上的每个人都需要构建一个从当前日期开始的 40 年前的日期:

SELECT *
FROM players
WHERE birthdate < DATE_SUB(CURRENT_DATE(), INTERVAL 40 YEARS)
于 2013-09-18T10:55:24.330 回答