您好,我怎样才能获得跨记录的最短时间的AVG?
意思是,我有这些记录:
Id Date Time Amount
1 7/1/14 9:00am 5.00
2 7/1/14 8:45am 6.00
3 7/1/14 9:30am 7.00
4 7/2/14 8:30am 4.50
5 7/2/14 9:15am 5.50
6 7/2/14 7:45am 4.75
现在我需要的是每天获得MIN ...所以在这种情况下它将是记录2和6。 但是我想知道那些时间的平均值...意思是早上8:45和早上7:45 ...
我想知道一段时间内首次销售的平均时间是多少。不知道如何平均时间。因此,在一段时间内,通常首次销售发生在早上8:20左右(估计)
非常适合任何协助
答案 0 :(得分:2)
您可以尝试这样的事情: -
SELECT Id, Date, AVG(Time)
FROM (SELECT Id, Date, MIN(Time) AS Time
FROM YOUR_TABLE
GROUP BY Id, Date) AS TABLE1
GROUP BY Id, Date;
这可能对您有所帮助。
答案 1 :(得分:0)
要获得平均值,请将时间转换为秒,计算平均值并将其转换回时间。
SELECT Id, Date, SEC_TO_TIME(AVG(sec))
FROM (SELECT Id, Date, MIN(TIME_TO_SEC(Time)) AS sec
FROM YOUR_TABLE
GROUP BY Id, Date) AS TABLE1
GROUP BY Id, Date;
答案 2 :(得分:0)
SELECT Format(( AVG(Table1.daTime) /86400),"hh:nn:ss") AS AvgTimeOfFirstTransaction
FROM (SELECT date, (MIN(Time) *86400) AS daTime
FROM transactions
WHERE ( (transactions.date)>=#7/1/2014# And (transactions.date)<#7/3/2014#)
GROUP BY transactions.date
) AS TABLE1