我正在尝试检索上一年 12 月和当年 11 月之间的统计数据。我表的date
列的数据类型为date
.
下面的 SQL 可以很好地解决一个明显的问题,即它仅在手动更改年份时才有效。在这一时期动态变化的年份中,如何实现同样的目标?
SELECT date, SUM(numCalls) AS callTotal FROM callstats_callData
WHERE date BETWEEN '2011-12-01' AND '2012-11-01'
GROUP BY date ORDER BY date
PHP 正在从 MySQL 表中检索数据。
更新
下面的代码有效,但我希望有一个基于 SQL 的解决方案。
$date1 = (date("Y") - 1) . '12-01';
$date2 = date("Y") . '-11-01';
$fetchTotals = $this->contentDB->prepare("SELECT date, SUM(numCalls) AS callTotal FROM callstats_callData
WHERE date BETWEEN ? AND ?
GROUP BY date ORDER BY date");
$fetchTotals->execute(array($date1, $date2));
$totals = $fetchTotals->fetchAll();
工作示例
这是为了在此处检索 Total Calls 图表的呼叫数据。需要循环检索结果,以便显示该时间段内每个月的总数。此页面目前使用上面的 PHP 和 MySQL 代码正常工作,只是希望有一个基于 SQL 的解决方案。