簡體   English   中英

如何在 MySQL 中對日期字段進行分組以獲取季度結果?

[英]How do I group a date field to get quarterly results in MySQL?

我有一個包含工作的工作表,leaddate 是工作條目的字段。

我想要得到的結果是我每個季度的工作數量。 我的查詢計算了leaddate 字段中每個日期的工作。

這是查詢

select count(jobid) as jobcount, leaddate
from jobs
where contactid='19249'
group by leaddate

我認為這應該做的工作:

SELECT YEAR(leaddate) AS year, QUARTER(leaddate) AS quarter, COUNT(jobid) AS jobcount
  FROM jobs
 WHERE contactid = '19249'
 GROUP BY YEAR(leaddate), QUARTER(leaddate)
 ORDER BY YEAR(leaddate), QUARTER(leaddate)

假設您有一個有效的日期或日期時間字段:

select count(jobid) as jobcount, YEAR(leaddate) yr, QUARTER(leaddate) qt
from jobs
where contactid='19249'
group by yr, qt

我通常將季度和年份組合成一個 YEAR-QUARTER 字段:

select jobid, count(jobid) as jobcount, 
CONCAT( YEAR(leaddate),'-',QUARTER(leaddate) ) as year_qtr
from jobs
where contactid='19249'
group by year_qtr

返回數據,如:

19249, 324, 2011-3
19249,   4, 2011-2
19249,  34, 2011-1

您可以使用 Quarter 函數從日期獲取季度:

select count(jobid) as jobcount, QUARTER(leaddate) as qt, YEAR(leaddate) as year
from jobs
where contactid='19249'
group by year,qt

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM