zoukankan      html  css  js  c++  java
  • 如何在AS/400 SQL 查询中实现条件表达式

    在AS/400的SELECT语句中可以使用CASE表达式,它可根据表达式的内容返回不同的
    值,它可以简化原来需多条SQL语句实现的查询,以前用多个游标完成的统计可在一条语
    句中完成,以下举例加以说明。
    解答 1.语法规则:
    Case语句
    --当对不同条件产生不同的结果值时,可使用Case语句。
    --Case语句计算所有定义的条件,并按条件是否为真而返回结果。
    语法如下:
    CASE [<input_expression>]
    WHEN <when_expression> THEN <result_expression>
    [ELSE <else_expression>]
    END
    Input_expression是任何有效的SQL Server表达式或布尔表达式。
    When_expression是任何有效的SQL --Server表达式或布尔表达式。这个表达式和Input_expression比较,如果Input_expression没有定义,则When_expression应该是一个布尔表达式。
    Result_expression是任何有效的SQL Server表达式。如果When_expression和Input_expression的比较返回TRUE
    (如果定义了Input_expression)或When_expression的值为TRUE,则计算表达式,并返回其结果。
    否则计算Else_expression中的表达式,并返回其结果。
    2.举例说明
    例如:
    AS/400上有一个学生成绩表GRADE。要根据学生成绩生成成绩等级。

    执行SQL查询,这个查询是按照学生成绩的等级进行分类,在报表中生成新的一列“grade_class”
    select no,grade,
    case
    when grade>=90 then 'Excellence'
    when grade>=70 and grade <90 then 'Good'
    when grade>=60 and grade <70 then 'Pass'
    else 'Not pass'
    end as grade_class
    from xqlib/grade

  • 相关阅读:
    c语言简易文法
    词法分析实验报告
    词法分析程序
    scrapy-splash的安装和使用
    scrapy关于将数据保存进mysql数据库及问题解决(增删查改)
    关于scrapy的一些练习
    安装python框架scrapy
    ssm中遇到的一些问题及解决办法
    安装PIL和pytesseract,用Pycharm自动化测试,验证码登陆
    selenium+pycham自动化登陆qq邮箱发送邮件
  • 原文地址:https://www.cnblogs.com/wildfish/p/1031937.html
Copyright © 2011-2022 走看看