MySql,日期数据类型。询问

时间:2013-06-11 01:59:08

标签: mysql database

我有一个名为Driver的表。 date日期数据类型中有一个名为birthDate的列。 输入为'1995-05-18'YEAR-MONTH-DATE

我需要查询列出1950年,1960年,1970年,1980年,1990年和2000年出生的所有司机。

这就是我的想法。

SELECT name FROM Driver WHERE birthDate IN (1950, 1960, 1970, 1980, 1990, 2000);

我该怎么做?所以它可以寻找一年。

DESCRIBE驱动程序;

Driver
+-----------+-------------+------+-----+---------+----------------+
| Field     | Type        | Null | Key | Default | Extra          |
+-----------+-------------+------+-----+---------+----------------+
| name      | varchar(40) | YES  |     | NULL    |                |
| birthDate | date        | YES  |     | NULL    |                |
| id        | int(11)     | NO   | PRI | NULL    | auto_increment |
+-----------+-------------+------+-----+---------+----------------+
3 rows in set (0.00 sec)

1 个答案:

答案 0 :(得分:1)

SELECT name
FROM Driver
WHERE YEAR(birthDate) IN (1950, 1960, 1970, 1980, 1990, 2000);

您需要使用YEAR()功能仅比较年份。 AND语法中没有IN (list)