SQL基础教程:CASE判断函数详解

需积分: 23 11 下载量 27 浏览量 更新于2024-07-10 收藏 2.43MB PPT 举报
"易飞SQL常用基础语法,包括CASE语句的使用和SELECT查询的基本结构" 在SQL语言中,`CASE`语句是一种条件判断表达式,常用于在查询结果中根据不同的条件返回不同的值。在易飞SQL中,`CASE`语句同样适用。其基本语法结构如下: ```sql CASE WHEN 条件1 THEN 结果1 WHEN 条件2 THEN 结果2 WHEN 条件3 THEN 结果3 ... ELSE 结果 END ``` 在这个结构中,`WHEN`后的条件会逐一进行检查,一旦满足某个条件,就返回对应的`THEN`后的结果。如果所有条件都不满足,且存在`ELSE`子句,则返回`ELSE`后的结果。如果没有任何条件满足且没有`ELSE`子句,结果将是`NULL`。 例如,下面的SQL语句用于从名为`student`的表中查询学生姓名和根据年龄划分的年龄段: ```sql SELECT stuName, CASE WHEN stuage < 30 THEN '40岁以下' WHEN stuage BETWEEN 30 AND 50 THEN '40-50岁' ELSE '50岁以上' END AS 年龄段 FROM student ``` 这将返回一个结果集,其中包含学生的姓名和根据年龄划分的年龄段标签。 `SELECT`语句是SQL中最核心的部分,用于从数据库中检索数据。它的基本结构如下: ```sql SELECT 字段1, 字段2, ... 字段n FROM 表格1, 表格2, ... 表格n WHERE 条件 GROUP BY 字段1, 字段2, ... 字段n ORDER BY 字段1, 字段2, ... 字段n ``` - `SELECT`部分用来指定需要查询的字段,可以是表中的实际字段,也可以是衍生字段,比如使用函数计算的值。 - `FROM`部分指定参与查询的表格,可以是单个或多个。 - `WHERE`部分设置查询条件,根据指定的条件筛选数据。 - `GROUP BY`用于对数据进行分组,通常与聚合函数(如`SUM`, `COUNT`, `AVG`等)一起使用。 - `ORDER BY`则用来对查询结果进行排序,`ASC`表示升序,`DESC`表示降序。 例如,如果要查询`INVMB`表中所有商品的总库存金额,可以使用以下语句: ```sql SELECT SUM(MB065) AS 总金额 FROM INVMB ``` 而如果想去除重复的记录,可以使用`DISTINCT`关键字: ```sql SELECT DISTINCT TA001, TA002 FROM table_name ``` `DISTINCT`会确保返回的每一对`TA001`和`TA002`组合都是唯一的,消除重复的行。 易飞SQL的`CASE`函数和`SELECT`语句是数据查询和处理的重要工具,它们提供了灵活的方式来进行条件判断和数据筛选,为数据分析和报表生成提供了便利。在实际使用中,可以根据具体需求进行组合,实现复杂的数据操作。