【发布时间】:2018-12-03 02:14:15
【问题描述】:
是的,所以我已经研究了一段时间,发现人们在 Cassandra 中排序数据时遇到问题并不少见,但我仍然无法弄清楚为什么我的选择没有按正确顺序排序大大地。 所以这是我的表创建查询:
CREATE TABLE library.query1 (
id int,
gender text,
surname text,
email text,
addinfo text,
endid int,
name text,
phone int,
PRIMARY KEY ((id), gender, surname, email)
) WITH CLUSTERING ORDER BY (gender DESC, surname DESC, email DESC);
隐含地,我想按性别 > 姓 > 电子邮件对我的数据进行排序。
然后我通过 CVN 导入数据,因为我正在从 PostgreSQL 表中导入数据。这是我正在使用的 SELECT:
SELECT id, gender, name, surname, phone, email
FROM library.query1;
我在查询中是否忘记了要完成订购的内容,还是我的建模错误?
【问题讨论】:
-
您的数据将仅在您的分区内排序。在您的情况下,分区是 id。
-
我可以在分区中包含其他列吗?我尝试将主键设置为(id、gender、surname、email),但它似乎也不起作用。另外,发现我可能必须在某些 WHERE 子句中包含“id”才能对要排序的列,但这也失败了。
标签: cassandra cqlsh clustering-key