我正在开发Spring Boot应用程序,使用Cassandra v1.5.10.Release的Spring Data连接到Cassandra。
我找不到任何显示如何使用CassandraOperations和QueryBuilder从Cassandra表中检索max(col(的参考。我在下面尝试过,但它返回 - 未定义的列名"max(id(">
public class CassandraTest{
@Autowired
private CassandraOperations cassandraTemplate;
public void execute() {
Select sel = QueryBuilder.select("max(id)").from("table").;
Integer maxId= cassandraTemplate.queryForObject(sel, Integer.class);
System.out.println("maxid ===> " + maxId);
}
}
在浏览了参考文档之后,我发现了另一种方法——不使用 QueryBuilder 的老式方式。
String selectQuery = "select max(id) as maxId from table";
Integer maxId= csOps.selectOne(selectQuery, Integer.class);
System.out.println("maxid ===> " + maxId);
我仍然想知道QueryBuilder是否可能。有趣的是,datastax 驱动程序 Select API 支持 max 函数。
public Select.SelectionOrAlias max(Object column)
Description copied from class: Select.Selection
Creates a max(x) built-in function call.
Overrides:
max in class Select.Selection
Returns:
the function call.
这应该有效(尽管未经测试(:
Select sel = QueryBuilder.select().max(column("id")).from("table").;