簡體   English   中英

MySQL每月平均datediff

[英]MySQL average datediff per month

例如,我有以下數據庫:

date1      | date2      | datediff
2016-11-02 | 2016-11-05 | 3
2016-11-08 | 2016-11-10 | 2
2016-11-01 | 2016-11-05 | 4
2016-11-09 | 2016-11-09 | 0
2016-11-15 | 2016-11-20 | 5

我通過以下sql獲得datediff:

select 
datediff(date2, date1)
from table

現在我需要每個月的平均datediff,在這種情況下,是2016-11年的:2.8

預先感謝,帕特里克。

您可以使用month(),AVG和分組依據

select year(date1), month(date1), avg(datediff(date2, date1))
from my_table 
group by year(date1), month(date1)
;

我認為您可以使用group by

select year(date1), month(date1), AVG(datediff(date2, date1))
from table
group by year(date1), month(date1);
select AVG(datediff(date2, date1))
from table
group by year(date1), month(date1);

您可以使用LAST_DAY()函數獲取任何日期/時間值的月份的最后一天。 (聽起來比世界末日要殘酷得多。)這對於分組很有用。

所以,嘗試

 SELECT LAST_DAY(date1) month_ending, AVG(DATEDIFF(date2,date1)) datediff
   FROM table
  GROUP BY LAST_DAY(date1)
  ORDER BY LAST_DAY(date1)
select avg(datediff(date2, date1))as difference
from table
group by year(date1),month(date1)

暫無
暫無

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

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