Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql RoR3从表创建表格报告_Mysql_Ruby On Rails_Ruby_Ruby On Rails 3 - Fatal编程技术网

Mysql RoR3从表创建表格报告

Mysql RoR3从表创建表格报告,mysql,ruby-on-rails,ruby,ruby-on-rails-3,Mysql,Ruby On Rails,Ruby,Ruby On Rails 3,将大量数据汇总成有用的表格报告的最佳方式是什么 例如: +---------------------+---------------------+-------------------+ | acctstarttime | acctstoptime | calledstationid | +---------------------+---------------------+-------------------+ | 2011-12-31 15:41:46 |

将大量数据汇总成有用的表格报告的最佳方式是什么

例如:

+---------------------+---------------------+-------------------+
| acctstarttime       | acctstoptime        | calledstationid   |
+---------------------+---------------------+-------------------+
| 2011-12-31 15:41:46 | 2011-12-31 15:41:46 | 00-00-00-11-00-10 |
| 2011-12-31 15:42:00 | 2011-12-31 15:42:00 | 00-00-00-11-00-10 |
| 2011-12-31 15:42:08 | 2011-12-31 15:42:08 | 00-00-00-11-00-10 |
| 2011-12-31 15:44:26 | 2011-12-31 15:44:26 | 00-00-00-11-00-10 |
| 2011-12-31 15:44:47 | 2011-12-31 15:44:47 | 00-00-00-11-00-10 |
| 2011-12-31 15:45:03 | 2011-12-31 15:45:04 | 00-00-00-11-00-10 |
| 2011-12-31 15:45:30 | 2011-12-31 15:45:30 | 00-00-00-11-00-10 |
| 2011-12-31 15:47:01 | 2011-12-31 15:47:01 | 00-00-00-11-00-10 |
| 2011-12-31 15:48:29 | 2011-12-31 15:48:29 | 00-00-00-11-00-10 |
| 2011-12-31 15:48:54 | 2011-12-31 15:48:54 | 00-00-00-11-00-10 |
| 2012-01-02 23:47:09 | 2012-01-02 23:47:09 | 00-00-00-11-00-10 |
| 2012-01-02 23:47:16 | 2012-01-02 23:47:16 | 00-00-00-11-00-10 |
| 2012-01-02 23:47:17 | 2012-01-02 23:47:17 | 00-00-00-11-00-10 |
| 2012-01-02 23:47:18 | 2012-01-02 23:47:18 | 00-00-00-11-00-10 |
| 2012-01-02 23:47:19 | 2012-01-02 23:47:19 | 00-00-00-11-00-10 |
| 2012-01-04 17:58:51 | 2012-01-04 17:58:51 | 00-00-00-11-00-10 |
| 2012-01-08 23:24:07 | 2012-01-08 23:24:07 | 00-00-00-11-00-10 |
| 2012-01-08 23:50:31 | 2012-01-08 23:50:31 | 00-00-00-11-00-10 |
| 2012-01-08 23:50:59 | 2012-01-08 23:50:59 | 00-00-00-11-00-10 |
| 2012-01-08 23:50:59 | 2012-01-08 23:50:59 | 00-00-00-11-00-10 |
| 2012-01-08 23:51:00 | 2012-01-08 23:51:00 | 00-00-00-11-00-10 |
| 2012-01-08 23:51:01 | 2012-01-08 23:51:01 | 00-00-00-11-00-10 |
| 2012-01-08 23:51:17 | 2012-01-08 23:51:17 | 00-00-00-11-00-10 |
| 2012-01-09 00:00:13 | 2012-01-09 00:00:13 | 00-00-00-11-00-10 |
| 2012-01-09 00:00:20 | 2012-01-09 00:00:20 | 00-00-00-11-00-10 |
| 2012-01-09 00:06:29 | 2012-01-09 00:06:29 | 00-00-00-11-00-10 |
| 2012-01-09 00:06:54 | 2012-01-09 00:06:54 | 00-00-00-11-00-10 |
| 2012-01-09 00:07:08 | 2012-01-09 00:07:08 | 00-00-00-11-00-00 |
| 2012-01-09 00:07:50 | 2012-01-09 00:07:50 | 00-00-00-11-00-00 |
| 2012-01-09 00:07:51 | 2012-01-09 00:07:51 | 00-00-00-11-00-00 |
+---------------------+---------------------+-------------------+
我们有数千行这样的数据,正在尝试创建一个表(然后是图表),首先,它按一周中的哪一天汇总数据。基本上,我们试图按天/小时显示使用情况。例如,在2011年1月1日至2011年1月31日之间:

 Monday     11
 Tuesday    14
 Wednesday  16
 Thursday   12
 Friday     09
 Saturday   77
 Sunday     08

是否有插件可以执行此操作,或者我需要以另一种方式进行总结?

数据是否在数据库中?你用哪一种?用直接的SQL进行可能是最简单快捷的方法。我们在MySQL上。我发现这比活动记录快,但希望将查询量保持在最低限度,因为我怀疑,如果查询量超过100000行,可能会带来很大的负担。。。S@mu是的,您最好在原始SQL中这样做,使用
groupby
COUNT
语句+
strftime
过程,性能会更好。为了减轻数据库负载,有不同的方法:将每个查询限制在一周内,缓存计算结果,甚至将计算结果存储在数据库中,并添加触发器/回调以在插入/更新/删除时更新它们(警告,从长远来看,这可能会变得非常乏味,如果您在写时寻求高性能,则会变得无效)。一旦你有了数据,就可以很容易地用很好的方法来绘制它,关于缓存结果的任何技巧,我从来没有尝试过这样的方法?