Итак, предложение Кассандры where поддерживает =
, <
, >
, >=
, <=
. Нет поддержки для not null
или !=
null. Стоит отметить, что единственное время IS NOT NULL
существует в материализованном представлении. Это связано с тем, что в первичном ключе не может быть нулевого значения, и в этом случае вы приводите переменные, которые в противном случае могли бы быть сброшены в первичный ключ. Кроме того, вам необходимо включить весь первичный ключ из базовой таблицы в ваше материализованное представление.
Пример материализованного представления
CREATE KEYSPACE test_keyspace
WITH REPLICATION = { 'class': 'SimpleStrategy', 'replication_factor': 1};
CREATE TABLE myTable(
id int,
col1 varchar,
col2 varchar,
PRIMARY KEY(id, col1)) ;
CREATE MATERIALIZED VIEW test_view AS
SELECT col2, col1, id FROM myTable
WHERE col2 IS NOT NULL AND col1 IS NOT NULL
PRIMARY KEY(col2, id, col1);
Следует отметить, что материализованные представления имеют некоторые последствия для производительности, и вам, возможно, будет лучше развернуть свои собственные.