不用多说,代码中遇到了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;
分享到:
相关推荐
@Formula("CASE WHEN gender = 'F' THEN 'Ms.' ELSE 'Mr.' END") private String title; ``` #### @Version - **用途**:用于实现乐观锁机制。 - **示例**: ```java @Version private int version; ``` #...
使用`CASE WHEN...THEN...ELSE...END`可以在查询中进行条件判断,生成动态结果。 综上所述,HQL提供了一系列强大的查询功能,涵盖了从简单的数据检索到复杂的条件过滤和聚合分析。掌握这些基础和进阶的知识点对于...
这些标签用于构建动态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(字段名, '') ...
- `choose`/`when`/`otherwise`:类似于Java中的switch-case结构。 - `bind`:绑定SQL参数。 - **执行原理**:利用OGNL表达式解析传入的参数对象,根据表达式的值动态拼接SQL语句。 #### 六、#{}与${} - **区别*...
- **choose/when/otherwise**:类似于 switch-case 语句,选择一个子句生成。 - **foreach**:用于循环遍历集合,生成重复的 SQL 子句。 - **where**:根据条件动态生成 WHERE 子句。 - **set**:动态生成 SET 子句...
- `<choose>`, `<when>`, `<otherwise>`:类似于Java中的switch-case语句。 - `<trim>`:用于修剪SQL语句中的前缀、后缀或者空白字符等。 - `<foreach>`:用于处理多个参数或者数组集合的循环操作。 #### 八、...
这些标签用于构建动态SQL,类似Java的if-else结构,对应switch,<when>对应case,对应default。 19. **MyBatis如何处理批量操作?** 可以使用Executor的batch()方法开启批量操作模式,然后执行多个insert、update...
- 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中需要使用...
- ORACLE 的 DECODE 函数在 DB2 中不受支持,但可以使用 CASE WHEN 语句来实现相同的功能。 8. **NVL 函数**: - NVL 在 ORACLE 中用于处理 NULL 值,DB2 中对应的函数是 COALESCE,它们都能将 NULL 替换为指定的...
2. **choose/when/otherwise**:类似于Java中的switch-case结构。 3. **foreach**:遍历集合或数组,用于批量操作。 #### 八、案例实践:订单商品案例 1. **需求**:对订单商品案例中的用户表进行增删改查操作。 ...
- **choose/when/otherwise**:类似SQL中的CASE WHEN语句,根据不同的条件选择执行不同的SQL片段。 ##### 3. 事务管理 - **基于JDBC的事务管理机制**:适用于简单的应用,可以使用try-catch-finally块来控制事务的...
- **Choose-When-Otherwise**:类似于`CASE WHEN`结构,用于复杂的条件判断。 - **Foreach**:循环遍历集合或数组。 - **占位符**:`${}`和`#{}`分别表示字符串替换和预编译参数。 **关联关系** - **多对一**、**一...
- **题目**: Servlet的doPost与doGet方法中HttpServletRequest和HttpServletResponse实例由ServletContainer在运行期动态注入,这种与Spring依赖注入中的哪种模式对应? - A. 设值注入 - B. 引用注入 - C. 构造...
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...
- 相当于 SQL 中的 CASE WHEN ... ELSE ... END。 5. **foreach**: - 用于循环遍历集合。 6. **SQL 片段**: - 可复用的 SQL 代码片段。 #### 十、MyBatis的缓存 - MyBatis 提供了一级缓存和二级缓存机制。 1. **...
6. **SQL统计查询**:使用CASE WHEN THEN语句结合GROUP BY和COUNT函数完成复杂的聚合统计。 7. **火车速度问题**:通过建立数学模型计算火车速度,考虑少年与火车的相对运动。 8. **Oracle语句与存储过程**:掌握DDL...
- 统计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 ...
3. **条件判断:** 熟练使用CASE when end else语句。 4. **函数使用:** 熟悉使用Decode函数、日期函数等。 5. **视图管理:** 熟悉创建和修改视图。 6. **索引管理:** 熟练创建和修改索引。 7. **统计分析:** 熟练...