我是Cassandra的新手所以我只需要知道如果我创建一个包含具有时间戳的地图数据类型的列的表是错误的。如果是错的,我可以使用哪种数据类型与地图数据类型?
CREATE TABLE login_user (
user_name text,
password text,
location map<timestamp,text>,
PRIMARY KEY (user_name)
);
答案 0 :(得分:1)
根据Collections上的Apache文档,您可以使用任何cql_type。列出了CQL类型there:时间戳就是其中之一。
以下查询正在运作:
INSERT INTO login_user (user_name , password , location ) VALUES ( 'bob', 'secret', { totimestamp(now()): 'time1'} );
INSERT INTO login_user (user_name , password , location ) VALUES ( 'july', 'secret', { '2011-02-03 04:05+0000': 'time1'} );
您可能想要检查插入时间戳的方式,可能是CQL解释器认为它是文本。查看working with timestamp的文档。