我想检查lastdate到今天是否等于75天。如果相等则返回1,否则返回0。MySQL - 添加两个日期并设置等于几天
我想下面的查询这给无差错
Select (DATE_ADD(Last_date,CURDATE())=75 DAY) from assessment;
请给我正确的查询,以获得result-
我想检查lastdate到今天是否等于75天。如果相等则返回1,否则返回0。MySQL - 添加两个日期并设置等于几天
我想下面的查询这给无差错
Select (DATE_ADD(Last_date,CURDATE())=75 DAY) from assessment;
请给我正确的查询,以获得result-
需要使用CASE
表达DATEDIFF
:
Select
CASE WHEN DATEDIFF(Last_date,CURDATE()) = 75 then 1 else 0 END AS col
from assessment
需要注意的是:如果last_date
可能是之前或之后CUR_DATE
,在这种情况下,你会得到一个负的成绩。因为:
DATEDIFF()返回表达式1 - 表达式2表示为天的值
所以,你可能需要使用ABS
得到的差值的绝对值:
Select
CASE WHEN ABS(DATEDIFF(Last_date,CURDATE()) = 75 then 1 else 0 END) AS col
from assessment
你需要使用MySQL DATEDIFF函数
DATE_DIFF()不正确...使用DATEDIFF() –
@AnilKumarReddy - 谢谢,你是对的。 – 2017-09-23 07:48:03