我有一张table在里面 Cassandra
与 id as Primary Key and name, address, department as clustering key
. 现在我有以下用例:
按id和名称获取用户
按id、名称和地址获取用户
按id、姓名、地址和部门获取用户
由于低阶聚类列在cassandra查询中是可选的,因此我们使用 Custom accessor In Java
对于上述用例。
但是我们必须在自定义访问器中编写3个不同的查询。
例如: select * from user where id=1 and name='A';
select * from user where id=1 and name='A' and address='a1'; select * from user where id=1 and name='A' and address='a1' and department='d1';
用于cassandra的java驱动程序是否提供了任何方法,以便我可以通过一个查询处理上述所有用例?
现在,如果我正在编写一个包含所有集群列的查询,例如,如果我试图仅通过id和name获取用户,那么我得到的结果不正确,因为我不能传递null,如果我传递空字符串,那么cassandra将通过空字符串过滤剩余的集群列,这将导致不正确的结果。
暂无答案!
目前还没有任何答案,快来回答吧!