Выберите запрос в вопросе CQL - PullRequest
0 голосов
/ 19 марта 2020

Я пытаюсь получить количество таблиц в базе данных Cassandra, я выполняю следующий запрос:

select count(*) 
from bssapi.call_detail_records 
WHERE 
year = 2020 
and month = 3
and event_at > '2020-03-01 07:45:51+0000' ALLOW FILTERING;

Ошибка, которую я получаю:

InvalidRequest: code=2200 [Invalid query] message="Partitioning column "year" cannot be restricted because the preceding column ("ColumnDefinition{name=subscription_id, type=org.apache.cassandra.db.marshal.UTF8Type, kind=PARTITION_KEY, componentIndex=0, indexName=null, indexType=null}") is either not restricted or is restricted by a non-EQ relation"

Когда я фильтрую запрос, добавляя идентификатор подписки, система возвращает счет правильно, эта проблема появляется только тогда, когда я запускаю счет для всей таблицы.

1 Ответ

0 голосов
/ 26 марта 2020

Я получил решение для этой проблемы, вместо этого я использовал следующий запрос:

select COUNT(*) from bssapi.call_detail_records WHERE event_at > '2020-03-22 07:45:51+0000' ALLOW FILTERING;
...