我在Cassandra中有一列“ postingdate”,其数据类型为timestamp。发布时(Instant.now()),我正在使用Spring数据Cassandra在此列中保存当前日期/时间。这是在UTC中插入日期/时间。
我必须选择发布在“ 2018-11-06”上的记录。在表中,我在该日期发布了一条记录,postingdate列显示为UTC中的“ 2018-11-07 04:25:24 + 0000”。
我正在运行以下查询-
从mytable中选择*,其中id ='5',并且发布日期> = '2018-11-06 00:00:00'和发布日期<='2018-11-06 23:59:59';
在Dev Center控制台(或CQLSH)上运行此查询,无论时区如何,都可以得到相同的结果。我在PST和IST中都尝试过,得到了相同的结果。在执行查询之前,Cassandra是否正在执行PST-> UTC或IST-> UTC转换?如果是,那怎么办?
答案 0 :(得分:1)
排除时区时,将其设置为客户端或协调器时区。
您可以通过设置TZ
环境变量或在cqlshrc
configuration file中指定timezone
参数来为CQLSH配置默认时区。