如何修复groovy.lang.MissingMethodException:计算总数时方法没有签名

时间:2019-01-08 18:15:09

标签: grails cassandra

我正在尝试连接到Cassandra,并在Grails中写一个查询以总计,但是我得到了一个缺少的方法异常:

  

groovy.lang.MissingMethodException:方法:项目没有签名   .sampleTest.column()适用于参数类型:(java.lang.String)值:[amount]   可能的解决方案:collect(),dump(),collect(groovy.lang.Closure)

下面是查询我写的金额总和。

Select selectQuery = QueryBuilder.select().fcall("sum", column("amount")).from(tableName).allowFiltering()

Session session = cassandraTemplate.getSession();

Where selectWhere = selectQuery.where();

1 个答案:

答案 0 :(得分:2)

要在fcall()内使用列名,您需要使用静态方法QueryBuilder.column()。因此,当您在fcall()中使用它时,您需要这样称呼它:

Select selectQuery = QueryBuilder.select().fcall("sum", QueryBuilder.column("amount")).from(tableName).allowFiltering()