在Riak TS中逐分钟计算

时间:2016-12-07 21:10:32

标签: riak riak-ts

我试图在Riak TS中抓住最近添加的小组。

我无法找到按分钟对结果进行分组的方法,例如计数。我将在下面展示一个例子。

CREATE TABLE Results
(
   result      VARCHAR   NOT NULL,
   time        TIMESTAMP NOT NULL,
   PRIMARY KEY (
      (QUANTUM(time, 1, 'm')),
      time
   )
)

插入

INSERT INTO FreightMinuteResult VALUES ('Novo', '2017-12-07 12:03:45Z');
INSERT INTO FreightMinuteResult VALUES ('Novo', '2017-12-07 12:04:45Z');
INSERT INTO FreightMinuteResult VALUES ('Novo', '2017-12-07 12:05:45Z'); 
INSERT INTO FreightMinuteResult VALUES ('Novo', '2017-12-07 12:05:46Z');

查询

select count(*) from FreightMinuteResult where time > '2017-12-07 12:01:00Z' and time < '2017-12-07 12:06:00Z' group by time;

结果是

+--------+--------------------+ |COUNT(*)| time | +--------+--------------------+ | 1 |2017-12-07T12:04:45Z| | 1 |2017-12-07T12:03:45Z| | 1 |2017-12-07T12:05:45Z| | 1 |2017-12-07T12:05:46Z| +--------+--------------------+

如何使用Riak TS计算每分钟发生的次数?

感谢。

1 个答案:

答案 0 :(得分:2)

量子用于组织后端中的数据以简化查询操作,而group by使用指定字段的精确值。时间戳2017-12-07T12:05:46Zgem 'guard-rspec', require: false #on gemfile development group $ bundle install $ bundle exec guard init rspec 在同一分钟内发生,因此将存储在磁盘上的相同位置,但它们仍然存储为不同的第二分辨率时间戳值,这些值将单独分组。

如果您希望能够按分钟分组,则需要在插入时对时间戳进行舍入,或者修改表格以包含可以分组的分钟字段。