Java Hibernate:如何根据条件选择返回0和null的最大列值

Java Hibernate:如何根据条件选择返回0和null的最大列值,java,sql,hibernate,select,aggregate-functions,Java,Sql,Hibernate,Select,Aggregate Functions,如何选择最大列值,当没有行匹配条件时返回0,当任何行包含null值的列时返回null 例如: SELECT MAX(groupId) from Interview WHERE appId= 61 如果不存在与此条件匹配的行,或者存在groupId=null的行,则返回 0-当queryForInt()时,null-当queryForList()时,获取第一个条目 请告知我查询更改或休眠方法。您可以尝试: 当COUNT(groupId)=0时选择CASE MaxGroupId,然后选择0 ELS

如何选择最大列值,当没有行匹配条件时返回
0
,当任何行包含
null
值的列时返回
null

例如:

SELECT MAX(groupId) from Interview WHERE appId= 61
如果不存在与此条件匹配的行,或者存在
groupId=null
的行,则返回
0
-当
queryForInt()
时,
null
-当
queryForList()
时,获取第一个条目

请告知我查询更改或休眠方法。

您可以尝试:

当COUNT(groupId)=0时选择CASE MaxGroupId,然后选择0 ELSE MAX(groupId) 结束 来自采访 其中appId=61

SQL If语句帮助:

或者类似于:

当COUNT(Record_id)=0时选择CASE MaxGroupId,然后选择0 ELSE MAX(groupId) 结束 来自采访
其中appId=61并按另一列分组

第一句话与第二句话相矛盾。也许你应该考虑两个问题。问题是count(groupId)总是返回0,即使没有匹配的行并且groupId为null。无论如何,谢谢你的建议。现在,我已经在代码中处理了用例。谢谢你,你可以用其他的专栏。面试表中还有哪些栏。是否有像记录id这样的非nll主键?你可以用这个,太棒了。非常好用…非常感谢。。。当COUNT(id)=0时选择CASE,然后0 ELSE MAX(groupId)在applicationId=61的面试中以maxGroupId结束