Mysql查找不在以前日期的名称

时间:2015-11-10 14:34:53

标签: mysql

我有一个Mysql数据库,其中包含五年后志愿者的姓名和日期列表。我将使用什么声明来生成特定日期之后的新名称列表(即过去没有自愿参加过的人)。

这是一个例子,我有一份100名不同志愿者的名单,他们在5年至今的不同日期多次自愿参加。有些人可能自愿参加过一次,其他人有5次,等等.Dave是一名新志愿者,于2015年2月6日自愿参加。我希望在2014-11-29之后生成一份新的志愿者名单。这个列表只会在这个例子中获取Dave的名字。

1 个答案:

答案 0 :(得分:1)

试试这个:

SELECT name
FROM your_table
WHERE column_date < DATE_SUB(NOW(), INTERVAL 5 YEAR);

或者:

SELECT name
FROM your_table
WHERE column_date < DATE_SUB(CURDATE(), INTERVAL 5 YEAR);

编辑(评论后):

试试这个:

SELECT DISTINCT aa.name
FROM your_table AS aa
WHERE aa.id NOT IN (
    SELECT id
    FROM your_table
    WHERE column_date < '2014-11-29'
);