我正在尝试选择两列包含相等值的所有内容。这是我的CQL查询:
select count(someColumn) from somekeySpace.sometable where columnX = columnY
这不起作用。我怎么能这样做?
答案 0 :(得分:1)
您不能这样查询,cassandra不支持
你可以用不同的方式做到这一点 首先,您必须创建一个单独的计数器表。
CREATE TABLE match_counter(
partition int PRIMARY KEY,
count counter
);
如果columnX = columnY
插入主表,则在此处增加值。虽然您只有一个计数,但您可以使用分区的静态值
UPDATE match_counter SET count = count + 1 WHERE partition = 1;
现在你可以得到匹配列的数量
SELECT * FROM match_counter WHERE partition = 1;