gpt4 book ai didi

如果表具有SET类型列,则Cassandra IN查询不起作用

转载 作者:行者123 更新时间:2023-12-04 04:10:55 25 4
gpt4 key购买 nike

我是Cassandra的新手。我在CQL IN query中遇到问题,如果表具有SET类型的列,则它可以工作。

CREATE TABLE test (
test_date bigint,
test_id bigint,
caption text,
PRIMARY KEY(test_date,test_id)
);

select * from test where test_date = 2022015 and test_id IN (1,2);

但是如果我添加上面设置的标签,那么它会给出错误
CREATE TABLE test1 (
test_date bigint,
test_id bigint,
tags set<text>,
caption text,
PRIMARY KEY(test_date,test_id)
);

select * from test1 where test_date = 2022015 and test_id IN (1,2);

code=2200 [Invalid query] message="Cannot restrict column "test_id" by IN relation as a collection is selected by the query"

最佳答案

我不确定为什么该限制应特别适用于收藏。但是根据您的情况,可以通过将test_id用作分区键的一部分来解决此问题:
PRIMARY KEY((test_date,test_id))
只要您指定复合键的第一部分(test_date),就可以进行IN查询。

关于如果表具有SET类型列,则Cassandra IN查询不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28278199/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com