在两个相对日期之间查询,MySQL


Query between two relative dates, MySQL

我有这个功能,但我希望用户能够在1到2个月前、6到19个月前或其他时间进行搜索。

$query =     
"SELECT * FROM reports 
WHERE date > DATE_SUB(NOW(), INTERVAL ".$dateMax." MONTH)"

我找不到任何关于将NOW函数更改为相对日期的文档。如有任何帮助,我们将不胜感激。

类似于:

$query =     
"SELECT * FROM reports 
WHERE date > DATE_SUB(NOW() - ".$dateMin." MONTH, INTERVAL ".$dateMax." MONTH)"

那真的很棒,但就是不起作用。

$query = "
SELECT
  *
FROM
  reports
WHERE
  date BETWEEN (CURRENT_DATE - INTERVAL $dateMin MONTH) AND (CURRENT_DATE - INTERVAL $dateMax MONTH);
";

另一个选项是日期,而不是当前日期:

  date BETWEEN ('2009-08-01' - INTERVAL $dateMin MONTH) AND ('2008-08-01' - INTERVAL $dateMax MONTH);