更新数据时,case when能在一个语句中处理多个条件,如UPDATE语句中:CASE WHEN salary >= 5000 THEN salary * 0.9 ... ELSE salary END,避免了重复执行UPDATE造成的逻辑混乱。在比较两个表的数据一致性时,case when结合IN或EXISTS等函数,可以实现更复杂的匹配逻辑。例如,检测tbl_A中的keyCol在...
WHEN '1' THEN '男' WHEN '2' THEN '女' ELSE '其他' END --Case搜索函数 CASE WHEN sex = '1' THEN '男' WHEN sex = '2' THEN '女' ELSE '其他' END 这两种方式,可以实现相同的功能。简单Case函数的写法相对比较简洁,但是和Case搜索函数相比,功能方面会有些限制,比如写判断式。 还有一个需要...
解释: SELECT case ---如果 when sex='1' then '男' ---sex='1',则返回值'男' when sex='2' then '女' ---sex='2',则返回值'女' else 0 ---其他的返回'其他’ end ---结束 from sys_user ---整体理解: 在sys_user表中如果sex='1',则返回值'男'如果sex='2',则返回值'女' 否则...
WHEN '1' THEN '男' WHEN '2' THEN '女' ELSE '其他' END --Case搜索函数 CASE WHEN sex = '1' THEN '男' WHEN sex = '2' THEN '女' ELSE '其他' END 这两种方式,可以实现相同的功能。简单Case函数的写法相对比较简洁,但是和Case搜索函数相比,功能方面会有些限制,比如写判断式。 还有一个需要...
WHEN col_1 IN ('a') THEN '第二类' ELSE'其他' END 下面我们来看一下,使用Case函数都能做些什么事情。 一,已知数据按照另外一种方式进行分组,分析。 有如下数据:(为了看得更清楚,我并没有使用国家代码,而是直接用国家名作为Primary Key) 国家(country) 人口(population) ...
CASE WHEN energy <= (SELECT P_LIMIT FROM TABLE_PRICE WHERE P_LEVEL = 0) THEN (SELECT P_PRICE FROM TABLE_PRICE WHERE P_LEVEL = 0) WHEN energy > (SELECT P_LIMIT FROM TABLE_PRICE WHERE P_LEVEL = 0) AND energy <= (SELECT P_LIMIT FROM TABLE_PRICE WHERE P_LEVEL = 1) THEN (...
WHEN col_1 IN ('a') THEN '第二类' ELSE'其他' END 下面我们来看一下,使用Case函数都能做些什么事情。 一,已知数据按照另外一种方式进行分组,分析。 有如下数据:(为了看得更清楚,我并没有使用国家代码,而是直接用国家名作为Primary Key) 国家(country) 人口(population) ...
select uuid,mobile,case when<= 12 then 1 when>=70 and age <=100 then 2 end as "年龄" from user where mobile="53437569"; 1. 2. 3. 4. 5. 6. 7. 查询结果:age小于等于12的用1已替换,age大于70小于100的用2已替换 第二种语法示例:多了一步else,当满足给定的when条件后的其他值,将会用...
Case when语句能在SQL语句中织入判断逻辑,类似于Java中的if else语句。 CASE WHEN语句分为简单函数和条件表达式。 1、简单函数 CASE 字段 WHEN 预期值 THEN 结果1 ELSE 结果2 END 如果字段值等于预期值,则返回结果1,否则返回结果2。 下面通过一个简单的示例来看一下具体用法。
mysql学习记录,CASEWHENTHENELSEEND⽤法 记mysql,case when then else end⽤法 ⽤法1:搜索函数 SELECT r.order_no,r.golds,r.pay_tool,CASE WHEN r.pay_tool =2THEN IFNULL( (SELECT w.cash_fee FROM ww_weixin_notify w WHERE w.out_trade_no = r.order_no GROUP BY w.out_trade_no) /...