`
黑色联想
  • 浏览: 27600 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Hibernate中when case与SQL中的when case

阅读更多

不用多说,代码中遇到了when case的问题

效果是一样的
具体方案如下:
SQL文:

select t.* 
from order_info t 
where t.status_for_manager='105' or t.status_for_manager='1060' 
order by case t.edit_user_name \
when 'hello' 
then 0 
else 1 
end;

 或

select * from table as t order by decode(t.field,"value","0","1" )

 Hibernate Query Language

from orderInfo as t 
where t.statusForManager='1060' or t.statusForManager='105' 
order by case 
when t.editUserName='hello' 
then 0 
else 1 
end;
 
分享到:
评论

相关推荐

    hibernate_anoatation(中文版)

    @Formula("CASE WHEN gender = 'F' THEN 'Ms.' ELSE 'Mr.' END") private String title; ``` #### @Version - **用途**:用于实现乐观锁机制。 - **示例**: ```java @Version private int version; ``` #...

    hibernate所用到HQL经典语句大全

    使用`CASE WHEN...THEN...ELSE...END`可以在查询中进行条件判断,生成动态结果。 综上所述,HQL提供了一系列强大的查询功能,涵盖了从简单的数据检索到复杂的条件过滤和聚合分析。掌握这些基础和进阶的知识点对于...

    MyBatis 常见面试题总结.zip

    这些标签用于构建动态SQL,判断条件,类似switch语句,<when>为case,为default。 13. **MyBatis的标签有何用处?** 常用于循环遍历集合,生成in语句的参数或动态生成SQL的where子句。 14. **MyBatis如何处理...

    数据库学习

    3. **时间倒序显示**:在MySQL中,如果需要时间字段为null的记录排在前面,并且按照时间倒序排列,可以使用`ORDER BY CASE WHEN ... END`,例如: ``` SELECT * FROM 表名 ORDER BY CASE WHEN IFNULL(字段名, '') ...

    MyBatis面试专题.pdf

    - `choose`/`when`/`otherwise`:类似于Java中的switch-case结构。 - `bind`:绑定SQL参数。 - **执行原理**:利用OGNL表达式解析传入的参数对象,根据表达式的值动态拼接SQL语句。 #### 六、#{}与${} - **区别*...

    Mybatis框架学习

    - **choose/when/otherwise**:类似于 switch-case 语句,选择一个子句生成。 - **foreach**:用于循环遍历集合,生成重复的 SQL 子句。 - **where**:根据条件动态生成 WHERE 子句。 - **set**:动态生成 SET 子句...

    mybatis学习笔记

    - `<choose>`, `<when>`, `<otherwise>`:类似于Java中的switch-case语句。 - `<trim>`:用于修剪SQL语句中的前缀、后缀或者空白字符等。 - `<foreach>`:用于处理多个参数或者数组集合的循环操作。 #### 八、...

    36道面试常问的MyBatis面试题!.zip

    这些标签用于构建动态SQL,类似Java的if-else结构,对应switch,<when>对应case,对应default。 19. **MyBatis如何处理批量操作?** 可以使用Executor的batch()方法开启批量操作模式,然后执行多个insert、update...

    DB2、ORACLE

    - Oracle的DECODE函数在DB2中不支持,可以使用CASE WHEN语句替代,如`SELECT CASE WHEN f_areaid IS NULL THEN '空' ELSE f_areaid END FROM masa_user`。 7. **NVL函数**: - Oracle的NVL在DB2中需要使用...

    DB2 与ORACLE的比对.docx

    - ORACLE 的 DECODE 函数在 DB2 中不受支持,但可以使用 CASE WHEN 语句来实现相同的功能。 8. **NVL 函数**: - NVL 在 ORACLE 中用于处理 NULL 值,DB2 中对应的函数是 COALESCE,它们都能将 NULL 替换为指定的...

    Mybatis实例教程(一)

    2. **choose/when/otherwise**:类似于Java中的switch-case结构。 3. **foreach**:遍历集合或数组,用于批量操作。 #### 八、案例实践:订单商品案例 1. **需求**:对订单商品案例中的用户表进行增删改查操作。 ...

    详细的ibatis教程

    - **choose/when/otherwise**:类似SQL中的CASE WHEN语句,根据不同的条件选择执行不同的SQL片段。 ##### 3. 事务管理 - **基于JDBC的事务管理机制**:适用于简单的应用,可以使用try-catch-finally块来控制事务的...

    各种框架说明

    - **Choose-When-Otherwise**:类似于`CASE WHEN`结构,用于复杂的条件判断。 - **Foreach**:循环遍历集合或数组。 - **占位符**:`${}`和`#{}`分别表示字符串替换和预编译参数。 **关联关系** - **多对一**、**一...

    JAVA笔试题

    - **题目**: Servlet的doPost与doGet方法中HttpServletRequest和HttpServletResponse实例由ServletContainer在运行期动态注入,这种与Spring依赖注入中的哪种模式对应? - A. 设值注入 - B. 引用注入 - C. 构造...

    Java面试经典题

    SELECT CASE WHEN B > C THEN B ELSE C END AS MaxCol FROM table; ``` #### 27. 日期判断的 SQL 语句 - 获取当天日期: ```sql SELECT * FROM tb_send WHERE DATE(SendTime) = CURDATE(); ``` #### 28. SQL...

    MyBatis技术文档.pdf

    - 相当于 SQL 中的 CASE WHEN ... ELSE ... END。 5. **foreach**: - 用于循环遍历集合。 6. **SQL 片段**: - 可复用的 SQL 代码片段。 #### 十、MyBatis的缓存 - MyBatis 提供了一级缓存和二级缓存机制。 1. **...

    java高级软件工程师面试题

    6. **SQL统计查询**:使用CASE WHEN THEN语句结合GROUP BY和COUNT函数完成复杂的聚合统计。 7. **火车速度问题**:通过建立数学模型计算火车速度,考虑少年与火车的相对运动。 8. **Oracle语句与存储过程**:掌握DDL...

    Java程序员面试题大全

    - 统计x字段不同情况的个数,以及输出条数大于200的情况:`SELECT COUNT(DISTINCT x) AS distinct_count, SUM(CASE WHEN count(x) > 200 THEN 1 ELSE 0 END) AS more_than_200 FROM (SELECT x, COUNT(*) FROM A ...

    java开发的岗位职责-java开发岗位职责.docx

    3. **条件判断:** 熟练使用CASE when end else语句。 4. **函数使用:** 熟悉使用Decode函数、日期函数等。 5. **视图管理:** 熟悉创建和修改视图。 6. **索引管理:** 熟练创建和修改索引。 7. **统计分析:** 熟练...

Global site tag (gtag.js) - Google Analytics