我有一个类似于下面的数据库查询,当我在mySql中执行这个查询时,它运行良好,但在Junit中失败,错误是“expression not in aggregate or GROUP BY columns:”。我的JUnit使用内存HSQL DB。我已经完成了Strange behavior of HSQLDB and group by并理解在查询中使用聚合方法时,我们需要为所有字段提供group by。
但是我有一个要求,我需要得到基于分组的所有值,只有一列(不是主键),你能建议我如何在JUnit中实现这一点吗。
我正在执行的查询:Select *, count(sampleField) from TestTable where sampleField2 != null group by sampleField
最佳答案
其他列可以使用min(列名)或max(列名)。
例如,如果有名为firstname
和lastname
的列
Select min(firstname), min(lastname), count(sampleField) from TestTable where sampleField2 != null group by sampleField