使用多个键查询Cassandra驱动程序 我试图从C++应用程序中查询CasDANRA,并返回一组密钥的值。我正在使用此处描述的datastax驱动程序:
cassandra查询字符串如下所示:使用多个键查询Cassandra驱动程序 我试图从C++应用程序中查询CasDANRA,并返回一组密钥的值。我正在使用此处描述的datastax驱动程序:,c++,cassandra,cassandra-2.0,C++,Cassandra,Cassandra 2.0,cassandra查询字符串如下所示: SELECT value from my_table WHERE key IN (?); 如果我为每个数量的参数准备一个单独的查询字符串,我可以使用cass\u statement\u bind\u string\n,但是有没有一种方法可以使用一个字符串,而不考虑我要查询的键的数量?这里有几点: 中的语法意味着您总是只要求一个项目-您的列表只有一个条目; 如果要查询多个项目,则需要将语法更改为IN?并将其绑定到具有列表类型的值; 使用IN for que
SELECT value from my_table WHERE key IN (?);
如果我为每个数量的参数准备一个单独的查询字符串,我可以使用cass\u statement\u bind\u string\n,但是有没有一种方法可以使用一个字符串,而不考虑我要查询的键的数量?这里有几点: 中的语法意味着您总是只要求一个项目-您的列表只有一个条目; 如果要查询多个项目,则需要将语法更改为IN?并将其绑定到具有列表类型的值; 使用IN for query on partition key实际上是反模式的——它会给执行查询的节点增加负载,并使您的查询速度变慢,因为协调节点将需要向其他节点发送请求,并等待结果、收集结果并发回。若您对每个分区键发出单独的请求,并在应用程序中收集答案,那个么速度会更快。