• sql中case when语句的使用


    case when语句有两种格式:简单case函数和搜索case函数。

    --简单Case函数
    CASE sex
    WHEN '1' THEN '男'
    WHEN '2' THEN '女'
    ELSE '其他' END
    --Case搜索函数
    CASE WHEN sex = '1' THEN '男'
    WHEN sex = '2' THEN '女'
    ELSE '其他' END

    这两种方式,可以实现相同的功能。简单Case函数的写法相对比较简洁,但是和Case搜索函数相比,功能方面会有些限制,比如写判断式。
    还有一个需要注意的问题,Case函数只返回第一个符合条件的值,剩下的Case部分将会被自动忽略。

    考虑一个例子:

    有一张表score,里面有3个字段:YW,SX,YY。其中有3条记录分别表示语文70分,数学80分,英语58分,请用一条sql语句查询出这三条记录并按以下条件显示出来:
    大于或等于80表示优秀,大于或等于60表示及格,小于60分表示不及格。
    显示格式:
    语文 数学 英语
    及格 优秀 不及格

    ------------------------------------------
    select
    (case when YW>=80
    then '优秀'
    when YW>=60 then '及格'
    else '不及格') as 语文,
    (case when
    SX>=80 then '优秀'
    when SX>=60 then '及格'
    else '不及格') as 数学,
    (case
    when YY>=80 then '优秀'
    when YY>=60 then '及格'
    else '不及格') as
    英语
    from score

  • 相关阅读:
    tp5更改入口文件到根目录的方法分享
    Linux安装JBOSS
    JBOSS和WebLogic区别
    面向对象编程的思维方式
    Struts+Spring+Hibernate整合入门详解
    DB2 UDB V8.1 管理
    oracle与DB2的一些架构
    oracle和DB2的差异
    JDK和JRE的区别
    Linux安装weblogic
  • 原文地址:https://www.cnblogs.com/aaron-shu/p/4105310.html
Copyright © 2020-2023  润新知