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

标签 java sql hibernate select aggregate-functions

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

例如:

SELECT MAX(groupId) from Interview WHERE appId= 61

当不存在与此条件匹配的行或存在 groupId=null 的行时,返回 0 - 当 queryForInt() 时,null - 当 queryForList() 时并获取第一个条目。

请让我知道查询更改或 Hibernate 方法。

最佳答案

你可以尝试:

选择案例 MaxGroupId WHEN COUNT(groupId)=0 THEN 0 ELSE MAX(组ID) 结尾 来自采访 其中 appId=61

SQL If 语句帮助:How do I perform an IF...THEN in an SQL SELECT?

或者类似的东西:

选择案例 MaxGroupId WHEN COUNT(Record_id)=0 THEN 0 ELSE MAX(组ID) 结尾 来自采访 WHERE appId=61 AND 按 ANOTHERCOLUMN 分组

关于java - Hibernate:如何根据条件选择返回 0 和 null 的最大列值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21039114/

相关文章:

spring - 手动更改 Multi-Tenancy session

c# - Java 套接字从 C# 读取字节

java - Spring Security CSRF token 不适用于 AJAX

sql - 现有 SQL 数据库的规范化

php - 如何查询多个表并使用附加

java - Spring声明式事务模式下事务似乎不起作用

java - Spring hibernate CrudRepository 使保存方法基于唯一约束更新

java - 无法解析 java.lang.CharSequence 类型

java - 将 JavaRDD<List<SomeClass>> 转换为 JavaRDD<SomeClass>

sql - 如何更快地执行 SQL 'NOT IN' 查询?