关键词搜索

源码搜索 ×
×

MySQL 的CASE WHEN 语句使用说明

发布2016-12-07浏览8271次

详情内容

case when语句,用于计算条件列表并返回多个可能结果表达式之一。
CASE 具有两种格式
一、简单 CASE 函数将某个表达式与一组简单表达式进行比较以确定结果。

语法
简单 CASE 函数:

CASE input_expression
    WHEN when_expression THEN result_expression
        [ ...n ]
    [
        ELSE else_result_expression
    END 

    返回结果中, value=compare-value
    例子:

    SELECT CASE 1 WHEN 1 THEN 'one' WHEN 2 THEN 'two' ELSE 'more' END
    • 1

    输出:’one’

    SELECT CASE WHEN 1>0 THEN 'true' ELSE 'false' END;
    
    • 1
    • 2

    输出: ‘true’

    二、使用带有简单 CASE 函数和 CASE 搜索函数的SELECT 语句
    CASE 搜索函数计算一组布尔表达式以确定结果。
    语法:

    CASE    
    WHEN Boolean_expression THEN result_expression
            [ ...n ]
        [ 
            ELSE else_result_expression
        END

      例子:

      WHEN IFNULL(tableA.name, '') != '' THEN
          (
              SELECT
                  lang.NAME
              FROM
                   commonitem_lang lang
              WHERE
                  '123456789' = lang.ID
              AND lang.KEY = 'K6'
          )
      WHEN IFNULL(tableA.name, '') = '' THEN
          (
              SELECT
                  lang.NAME
              FROM
                   commonitem_lang lang
              WHERE
                  '987654321' = lang.ID
              AND lang.KEY = 'K7'
          )
      END AS PWNAME
      
      • 7
      • 8
      • 9
      • 10
      • 11
      • 12
      • 13
      • 14
      • 15
      • 16
      • 17
      • 18
      • 19
      • 20
      • 21
      • 22

      注意第二种情况CASE后面直接是When,即需要判断的条件。

      作者:jiankunking 出处:http://blog.csdn.net/jiankunking

      相关技术文章

      点击QQ咨询
      开通会员
      返回顶部
      ×
      微信扫码支付
      微信扫码支付
      确定支付下载
      请使用微信描二维码支付
      ×

      提示信息

      ×

      选择支付方式

      • 微信支付
      • 支付宝付款
      确定支付下载