我在 Mac OS X (dsc-cassandra-1.2.6) 上使用 Datastax cassandra 发行版。我想使用 timeuuid 类型,并且正在尝试对它们进行查询。
这是我的桌子:
CREATE TABLE test_t (
canon_key text,
t timeuuid,
PRIMARY KEY (canon_key, t)
)
现在让我说我得到了一个行。
cqlsh:pagedb> select canon_key, t, dateOf(t), unixTimestampOf(t) from test_t where canon_key = 'xxx' and t >= minTimeuuid('2013-08-08 18:43:58-0700');
canon_key | t | dateOf(t) | unixTimestampOf(t)
-----------+--------------------------------------+--------------------------+--------------------
xxx | 287d3c30-0095-11e3-9268-a7d2e09193eb | 2013-08-08 18:43:58-0700 | 1376012638067
现在,我想删除这一行。我看不到这样做的好方法,因为 timeuuid 类型没有相等运算符。
我添加的数据的性质使得我(可能)甚至不介意这样做:
cqlsh:pagedb> select canon_key, t, dateOf(t), unixTimestampOf(t) from test_t where canon_key = 'xxx' and t >= minTimeuuid('2013-08-08 18:43:58-0700') and t < = maxTimeuuid('2013-08-08 18:43:58-0700');
但根据文档(http://cassandra.apache.org/doc/cql3/CQL.html#usingdates),这行不通。引用:“请注意 t >= maxTimeuuid('2013-01-01 00:05+0000') 仍然不会选择恰好在 '2013-01-01 00:05+0000' 生成的 timeuuid 并且基本上等同于t > maxTimeuuid('2013-01-01 00:05+0000')."。
那么..我如何删除这一行?