我需要一个sql查询从员工表中查找数据。起始日期出现在雇员表中。我需要在起始日期中添加90天,然后我需要检查起始日期是否在当前月份。
I did try below query:
SELECT *
FROM `employees`
WHERE DATE_ADD(str_to_date(startdate, '%m/%d/%Y'),INTERVAL 90 DAY) BETWEEN '09/01/2016' AND '09/30/2016'
但是它没有给我预期的结果。(如果查询是正确的,我确实有数据应该显示)
你好,我更改了查询并运行,请查看结果。我也在看下个月的结果
这是查询SELECT id,startdate from employees WHERE str_to_date(startdate, '%m/%d/%Y')之间的DATE_SUB(DATE_FORMAT(NOW(), '%Y-%m-01'), INTERVAL 90天)——本月初- 90天和DATE_SUB(LAST_DAY(NOW()), INTERVAL 90天)
查询输出rephrned my query…
事件发生在本月初和月底前90天内
WHERE str_to_date(startdate, '%m/%d/%Y') between
DATE_SUB(DATE_FORMAT(NOW(), '%Y-%m-01'), INTERVAL 90 day) -- start of this month - 90 days
and DATE_SUB(LAST_DAY(NOW()), INTERVAL 90 day) -- End of this month - 90 days
或三个月
WHERE str_to_date(startdate, '%m/%d/%Y') between
DATE_SUB(DATE_FORMAT(NOW(), '%Y-%m-01'), INTERVAL 3 month) -- start of this month - 3 months
and DATE_SUB(LAST_DAY(NOW()), INTERVAL 3 month) -- End of this month - 3 months