【发布时间】:2018-09-03 14:15:49
【问题描述】:
我有以下汽车生产数据的数据模型。
CREATE TABLE IF NOT EXISTS mytable (
date date,
color varchar,
modelid varchar,
PRIMARY KEY ((color), date, modelid)
)WITH CLUSTERING ORDER BY (date desc);
我想按 cassandra 中的总列对其进行排序,我希望生成如下:
SELECT color, count(*) AS total
FROM cars
WHERE date<='2017-12-07' AND date >'2017-11-30'
GROUP BY color
ORDER BY total
ALLOW FILTERING;
但是当我知道 Cassandra 只支持通过聚类列进行排序并且我无法在表中保留聚合值时,最好的方法是进行这种排序?
【问题讨论】:
-
我建议通过 Cassandras 驱动程序而不是 cqlsh 来执行此任务。例如,您在需要的一段时间内读取所有数据,然后手动对其进行排序。但是如果您有大量价值数据,请遵循@alex-ott 提出的解决方案
标签: cassandra cql cassandra-3.0 cql3