mysql case when怎么使用?


本文摘自PHP中文网,作者coldplay.xixi,侵删。

mysql case when用法:

MySQL 的 case when 的语法有两种:

简单函数

1

CASE [col_name] WHEN [value1] THEN [result1]…ELSE [default] END

搜索函数

1

CASE WHEN [expr] THEN [result1]…ELSE [default] END

这两种语法有什么区别呢?

1、简单函数

CASE [col_name] WHEN [value1] THEN [result1]…ELSE [default] END: 枚举这个字段所有可能的值。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

SELECT

    NAME '英雄',

    CASE NAME

        WHEN '德莱文' THEN

            '斧子'

        WHEN '德玛西亚-盖伦' THEN

            '大宝剑'

        WHEN '暗夜猎手-VN' THEN

            '弩'

        ELSE

            '无'

    END '装备'

FROM

    user_info;

    SELECT

1

2

3

4

5

6

7

8

9

10

11

12

13

    NAME '英雄',

    CASE NAME

        WHEN '德莱文' THEN

            '斧子'

        WHEN '德玛西亚-盖伦' THEN

            '大宝剑'

        WHEN '暗夜猎手-VN' THEN

            '弩'

        ELSE

            '无'

    END '装备'

FROM

    user_info;

2、搜索函数

CASE WHEN [expr] THEN [result1]…ELSE [default] END:搜索函数可以写判断,并且搜索函数只会返回第一个符合条件的值,其他case被忽略

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

# when 表达式中可以使用 and 连接条件

SELECT

    NAME '英雄',

    age '年龄',

    CASE

        WHEN age < 18 THEN

            '少年'

        WHEN age < 30 THEN

            '青年'

        WHEN age >= 30

        AND age < 50 THEN

            '中年'

        ELSE

            '老年'

    END '状态'

FROM

    user_info;

推荐教程:《mysql视频教程》

以上就是mysql case when怎么使用?的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

笔记之 mysql 优化

mysql】information_schema库中包含所有表的字段信息

mysql如何判断字段是否为空

mysql 如何将timestamp转换为date

mysql存储引擎:myisam和innodb的区别

mysql 5.7 版本的安装及简单使用(图文教程)

如何去除mysql表中的 r n

mysql在cmd和python下的常用操作解析

你知道mysql的limit有性能问题吗

mysqldump数据库备份参数详解

更多相关阅读请进入《mysql》频道 >>


数据库系统概念 第6版
书籍

数据库系统概念 第6版

机械工业出版社

本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...