У меня есть таблица в CQL -
create table test (
employee_id text,
employee_name text,
value text,
last_modified_date timeuuid,
primary key (employee_id)
);
Я вставил пару записей в приведенную выше таблицу, как это, что я буду вставлять в наш фактический сценарий использования -
insert into test (employee_id, employee_name, value, last_modified_date) values ('1', 'e27', 'some_value', now());
insert into test (employee_id, employee_name, value, last_modified_date) values ('2', 'e27', 'some_new_value', now());
insert into test (employee_id, employee_name, value, last_modified_date) values ('3', 'e27', 'some_again_value', now());
insert into test (employee_id, employee_name, value, last_modified_date) values ('4', 'e28', 'some_values', now());
insert into test (employee_id, employee_name, value, last_modified_date) values ('5', 'e28', 'some_new_values', now());
Теперь я делал запрос select - дайте мне все employee_id для employee_name e27
.
select employee_id from test where employee_name = 'e27';
И это ошибка, которую я получаю -
Bad Request: No indexed columns present in by-columns clause with Equal operator
Perhaps you meant to use CQL 2? Try using the -2 option when starting cqlsh.
Есть ли что-то неправильное, что я здесь делаю?
Мои варианты использования в общем случае -
- Дайте мне все для любого из employee_name?
- Дайте мне все, что изменилось за последние 5 минут?
- Дайте мне последний employee_id и значение для любого из имени employee_?
- Дайте мне все employee_id для любого имени employee_name?
Я запускаю Cassandra 1.2.11