我的 table 看起来像:
CREATE TABLE prod_cust (
pid bigint,
cid bigint,
effective_date date,
expiry_date date,
PRIMARY KEY ((pid, cid))
);
我的下面的查询在输入“OR”错误时没有给出可行的替代方案
SELECT * FROM prod_cust
where
pid=101 and cid=201
OR
pid=102 and cid=202;
Cassandra 是否不支持 OR 运算符,如果不支持,是否有其他方法可以实现我的结果。
最佳答案
CQL 不支持 OR
运算符。有时您可以使用 IN
来解决这个问题。但即使 IN
也不会让您做您正在尝试的事情。
我看到两个选项:
- 将
OR
的每一面作为单独的查询提交。 - 重组表格以更好地适合您想要做的事情。从 RDBMS 到 Cassandra 的“移植”几乎从来不会按预期进行。
关于cassandra - Apache Cassandra "no viable alternative at input ' 或'“,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68199482/