MySQL - 添加两个日期并设置等于某些天

时间:2017-09-23 07:15:16

标签: mysql

我想检查今天的最后日期是否等于75天。如果它相等则返回1否则返回0。

我尝试了下面的查询,它给出了错误 -

 Select (DATE_ADD(Last_date,CURDATE())=75 DAY) from assessment;

请给我正确的查询以获得结果 -

2 个答案:

答案 0 :(得分:2)

您需要将CASE表达式与DATEDIFF

一起使用
Select 
   CASE WHEN DATEDIFF(Last_date,CURDATE()) = 75 then 1 else 0 END AS col
from assessment

请注意:如果last_date可能位于CUR_DATE之前或之后,则在这种情况下您会得到否定结果。这是因为:

  

DATEDIFF()返回expr1 - expr2表示为以天为单位的值

因此,您可能需要使用ABS获取差异的绝对值:

Select 
   CASE WHEN ABS(DATEDIFF(Last_date,CURDATE()) = 75 then 1 else 0 END) AS col
from assessment

答案 1 :(得分:0)

您需要使用MySQL DATEDIFF功能

https://www.w3schools.com/sql/func_mysql_datediff.asp