Моя таблица:диапазон на несколько столбцов в Кассандре
CREATE TABLE user_position (
geopart text, // first 3 characters of geohash
geohash text,
datetime timestamp,
userId bigint,
PRIMARY KEY ((geopart), geohash, datetime, user_id)
);
Мой фиктивный запрос:
select * from user_position where geopart = 'abc' and geohash > 'a' and geohash < 'z' and datetime >= '2015-08-08 15:08:58+0530';
Ошибка:
Bad Request: PRIMARY KEY column "datetime" cannot be restricted (preceding column "geohash" is restricted by a non-EQ relation)
Вопрос:
Что я делаю неправильно ? Если диапазон в нескольких столбцах невозможен в Cassandra, то как я могу это достичь?
Могу ли я поставить запрос 'IN' после запроса диапазона? –
Нет, после фильтрации с использованием диапазона на одном из ваших столбцов в Cassandra вы даже не можете использовать фильтр = для последующего столбца кластеризации. –