【发布时间】:2012-02-21 21:16:41
【问题描述】:
我正在运行 MYSQL 版本 4.0.16。我的托管服务提供商管理服务器,因此我无法升级到更高版本。
我的任务是构建帮助台报告。它需要显示每天 8 天内的通话总数,当天结束的通话总数,然后需要显示 30 天期间每一天的平均通话次数。
出于格式化目的,我不得不离开加入日期列表。这纯粹是为了让我的报告不会缺少任何日期。
我正在努力弄清楚如何计算 30 天内每个日期的平均通话次数。谁能帮我做到这一点?平均值应该每天计算,因此该函数需要计算每个日期前过去 30 天内的所有调用,然后将其除以 30 来计算平均值。
【问题讨论】:
-
一些表结构会很有用;但是,在这种情况下,如果您可以选择一个月中的所有行,则可以通过调用 DAY(date) 来获取日期,并且可以使用 AVG(Calls) 函数获取平均值,按 DAY(日期)。如果有一些专栏可以举个具体的例子。
-
首先,更改托管服务提供商。 cvedetails.com/vulnerability-list/vendor_id-185/product_id-316/… 超级糟糕。第二,平均每天是什么意思?您想要一个数字(30 天的每日平均值)还是每天都有一个数字(例如一天内的小时平均值)?
-
嗨,这就是我的陈述目前的样子 - SELECT sum(if(FROM_UNIXTIME(maindb.logdatex,"%Y-%m-%d") = FROM_UNIXTIME(maindb.closedatex,"% Y-%m-%d"),1,0 )) 作为“关闭的总呼叫数”,计数(不同的 maindb.callref)作为“总呼叫数”,daily_report_dates.date 作为“日期”从daily_report_dates 左加入maindb ON daily_report_dates。 date = FROM_UNIXTIME(logdatex,"%Y-%m-%d") AND maindb.fk_company_id = "abc" where daily_report_dates.date BETWEEN CURDATE() - INTERVAL 30 DAY AND CURDATE() GROUP BY daily_report_dates.date
-
另外我的意思是我需要计算出每天的月平均值。对于造成的任何混乱,我深表歉意。
标签: mysql