作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个复杂的查询,我想使用 JPA Criteria Builder 为其构建查询
select i.*
from items i
where category = ?
order by
(price >= ?) desc,
(case when price >= ? then price end) asc,
price desc limit 1;
我对 Criteria Builder 不是很熟悉,但有基本的知识。
提前致谢。
最佳答案
遗憾的是,JPA 目前不支持 ORDER BY 子句中的 case 表达式。
如果你看一下 CriteriaQuery.orderBy 的参数, 参数必须是 Order
类型而不是 Expression
类型。
或者,您可以将其作为 native SQL 查询执行,然后通过 @SqlResultSetMapping
将结果映射到实体。
关于mysql - 如何在 MySQL 中为 case 语句编写 Criteria Builder,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33231904/
我是一名优秀的程序员,十分优秀!