我需要输出,如果一个人献血,最后捐献的血液日期将输入我的数据库。我想要的是当我选择所有记录时,它不应显示过去3个月内捐献血液的捐献者的记录。所以下面是我的查询,但我没有得到我想要的输出。
select id,name,date_format(dateee,'%d/%m/%Y') as datetwo
from emp
where dateee < curdate()-90;
其中“dateee”是我在数据库中的日期列。我得到的输出如下所示。
OUTPUT:
datetwo
20/01/2015
05/05/2015
见第2条记录。我不应该这样做,因为他只在上个月捐款。
答案 0 :(得分:0)
使用此查询
select id,name,date_format(dateee,'%d/%m/%Y') as datetwo
from emp
where dateee < (DATE_SUB(CURDATE(), INTERVAL 3 MONTH));
答案 1 :(得分:0)
此查询可为您提供准确的结果,因为它使用了与当前日期相隔90天的间隔。
select id,name,date_format(dateee,'%d/%m/%Y') as datetwo
from emp
where dateee < DATE_SUB(curdate(), interval 90 day);