zoukankan      html  css  js  c++  java
  • Mysql中的条件语句if、case

    Mysql中的条件语句在我们对数据进行转换的时候比较有用,这样就不需要创建中转表。

    IF 函数

    IF(expr1,expr2,expr3)
    

    如果 expr1 是TRUE (expr1 <> 0 and expr1 <> NULL),则 IF()的返回值为expr2; 否则返回值则为 expr3。IF() 的返回值为数字值或字符串值。

    select *,if(sva=1,"男","女") as ssva from taname where sva != ""
    

    IF ELSE 流程控制语句

    在mysql存储过程中的用法:

    IF search_condition THEN statement_list 
        [ELSEIF search_condition THEN statement_list] ... 
        [ELSE statement_list]
    END IF
    

    IF作为一条语句,在END IF后需要加上分号“;”以表示语句结束,其他语句如CASE、LOOP等也是相同的。

    CASE 表达式

    select CASE sva WHEN 1 THEN '男' ELSE '女' END as ssva from taname where sva != ''
    

    Swap Salary

    Leetcode中有一道题目就是根据条件来转换数据的,就需要用条件控制语句来实现。

    UPDATE salary SET sex = IF(sex = 'm', 'f', 'm')
    

    也可以利用条件语句,在搜索的时候,直接进行数据转换

    select *,(CASE WHEN sex='1' THEN '男' WHEN sex='0' THEN '女' ELSE '保密' END) as sex_text from user
    

    本文为作者原创,如果您觉得本文对您有帮助,请随意打赏,您的支持将鼓励我继续创作。

    参考资料:
    1、Mysql if case总结
    2、Leetcode swap salary
    3、select case when if 的一些用法
    4、IF Syntax

  • 相关阅读:
    数组——基础
    程序流程控制——循环结构
    程序流程控制——分支结构
    运算符
    进制
    变 量
    Java中的名称命名规范
    标识符(Identifier)
    保留字(reserved word)
    关键字
  • 原文地址:https://www.cnblogs.com/cocowool/p/8085104.html
Copyright © 2011-2022 走看看