时间戳比较不适用于presto cassandra

时间:2017-03-31 21:06:17

标签: mysql cassandra presto

我有以下presto查询从cassandra

检索数据

从表格中选择*,其中created_time> =' 2017-03-23 00:00:00.0'和created_time< =' 2017-03-25 00:00:00.0';

该表有70行,created_time为2017-03-25,但上面的查询并未将所有行返回给我。

created_time在cassandra中定义为timeuuid。有人可以帮我查询为什么不起作用

1 个答案:

答案 0 :(得分:0)

如果将created_time定义为timeuuid,我认为查询谓词会将其与timeuuid值进行比较,而不是字符串或日期字符串。

我们可以使用minTimeuuidmaxTimeuuid函数生成我们可以与timeuuid列进行比较的值。

如果我们想要在3月25日的某个时间使用created_time的行,我们可能希望比较为"小于" 26th' 2017-03-26'

例如:

   where created_time >= minTimeuuid('2017-03-25 00:00+0000') 
     and created_time <  minTimeuuid('2017-03-26 00:00+0000')