【发布时间】:2016-04-18 08:15:26
【问题描述】:
我一直在使用MONTH() 函数来获取月份并按月份分组,就像这个示例查询一样。
SELECT
t1.ano,
t1.mes,
tempo_extra,
tempo_ativo,
tempo_extra / tempo_ativo AS volume_extra
FROM
(SELECT
YEAR(`data`) AS ano,
MONTH(`data`) AS mes,
SUM(tempo) AS tempo_extra
FROM
rh.aprovacoes
WHERE
(tipo = 'BH' OR tipo = 'HE')
AND estado = 1
AND YEAR(aprovacoes.`data`) = 2016
GROUP BY MONTH(`data`)) AS t1
LEFT JOIN
(SELECT
MONTH(`data`) AS mes, SUM(ativo) AS tempo_ativo
FROM
rh.processamento
GROUP BY MONTH(`data`)) AS t2 ON t1.mes = t2.mes
ORDER BY mes DESC;
如何让月份从上个月的 23 日开始,到本月的 22 日结束。
例如,4 月从 3 月 23 日开始,到 4 月 22 日结束。
【问题讨论】:
-
您可以随时使用 MONTH() 函数中传递的参数,就像您可以使用 SQL 中的 DATEADD 函数从您传递的日期中添加天数或减去天数一样。并根据日期返回月份。不过不确定 MySql。