zoukankan      html  css  js  c++  java
  • mysql

    CASE WHEN condition THEN result 

       WHEN condition THEN result 

       .............
       [WHEN ...] 
       [ELSE result] 
    END

    CASE 子句可以用于任何表达式可以有效存在的地方。 condition 是一个返回boolean 的表达式。 如果结果为真,那么 CASE 表达式的结果就是符合条件的 result。 如果结果为假,那么以相同方式搜寻任何随后的 WHEN 子句。 如果没有 WHEN condition 为真,那么 case 表达式的结果就是在 ELSE 子句里的值。 如果省略了 ELSE 子句而且没有匹配的条件, 结果为 NULL。

    例子:

      学生表

      

      成绩表:

        

       查询每个学生的成绩,并展示学生的id,学生姓名,语文,数学,英语

      

    SELECT a.id,a.name,
    (case WHEN b.kemu = '数学' THEN score ELSE 0 END) as 数学,
    (case WHEN b.kemu = '语文' THEN score ELSE 0 END) as 语文,
    (case WHEN b.kemu = '英语' THEN score ELSE 0 END) as 英语
    FROM student a,grade b
    WHERE a.id = b.id

      结果:

        

  • 相关阅读:
    健壮性与可靠性
    invoke与call
    协变性和逆变性
    枚举类型和位标记
    MacOs mysql 安装
    scp -本地文件上传服务器,指定端口
    java中的无穷大和无穷小
    calendar类-时间处理类
    linux 下ln命令--笔记
    hdfs 文件系统命令操作
  • 原文地址:https://www.cnblogs.com/aiyumo/p/12523046.html
Copyright © 2011-2022 走看看