Cassandra CQLSH:将unix时间戳转换为日期时间
我正在对一列执行cql查询,该列将值存储为unix timestmap,但希望结果输出为datetime。有办法做到这一点吗 i、 e.类似于以下内容:Cassandra CQLSH:将unix时间戳转换为日期时间,cassandra,cql,cqlsh,Cassandra,Cql,Cqlsh,我正在对一列执行cql查询,该列将值存储为unix timestmap,但希望结果输出为datetime。有办法做到这一点吗 i、 e.类似于以下内容: select convertToDateTime(column) from table; 我在想是否有更简单、更直接的路线。但是,如果您有一个带有UNIX时间戳的表,并且希望以日期时间格式显示它,则可以将dateOf和min/maxtimeuid函数组合在一起,如下所示: aploetz@cqlsh:stackoverflow2> SE
select convertToDateTime(column) from table;
我在想是否有更简单、更直接的路线。但是,如果您有一个带有UNIX时间戳的表,并且希望以日期时间格式显示它,则可以将
dateOf
和min
/maxtimeuid
函数组合在一起,如下所示:
aploetz@cqlsh:stackoverflow2> SELECT datetime,unixtime,dateof(mintimeuuid(unixtime)) FROM unixtime;
datetimetext | unixtime | dateof(mintimeuuid(unixtime))
----------------+---------------+-------------------------------
2015-07-08 | 1436380283051 | 2015-07-08 13:31:23-0500
(1 rows)
aploetz@cqlsh:stackoverflow2> SELECT datetime,unixtime,dateof(maxtimeuuid(unixtime)) FROM unixtime;
datetimetext | unixtime | dateof(maxtimeuuid(unixtime))
----------------+---------------+-------------------------------
2015-07-08 | 1436380283051 | 2015-07-08 13:31:23-0500
(1 rows)
请注意,timeuuid存储的精度高于UNIX时间戳或日期时间,因此您需要首先使用min
或maxtimeuuid
函数将其转换为timeuuid。然后您可以使用dateof
将其转换为datetime时间戳