我想检查今天的最后日期是否等于75天。如果它相等则返回1否则返回0。
我尝试了下面的查询,它给出了错误 -
Select (DATE_ADD(Last_date,CURDATE())=75 DAY) from assessment;
请给我正确的查询以获得结果 -
答案 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功能