《sqlserver从入门到精通第9章sql数据查询》由会员分享,可在线阅读,更多相关《sqlserver从入门到精通第9章sql数据查询(12页珍藏版)》请在金锄头文库上搜索。
1、SQL 数据查询,教 学 目 的,内 容,1,教 学 要 求,2,重 点 难 点,3,教 学 内 容,4,教 学 目 的,通过本章的学习,可以应用各种查询对数据表中的记录进行访问。如使用SELECT检索数据,使用UNION将多个查询结果进行合并。子查询、嵌套查询、联接查询等。,教 学 要 求,掌握使用SELECT检索数据; 掌握使用UNION合并多个查询结果; 掌握子查询与嵌套查询; 掌握联接查询; 熟悉CASE函数的使用。,重 点 难 点,重点: SELECT检索数据中各子句的用法; 使用UNION合并查询结果 ; CASE函数的使用 ;,难点: 子查询与嵌套查询; 联接查询。,教 学 内
2、容,联接查询。,Select检索数据;,UNIO合并多个查询结果;,子查询与嵌套查询;,Select检索数据,查询是SQL语言的中心内容,而用于表示SQL查询的SELECT语句,是SQL语句中功能最强大也是最复杂的语句。其主要子句可归纳如下: WITH SELECT select_list INTO new_table FROM table_source WHERE search_condition GROUP BY group_by_expression HAVING search_condition ORDER BY order_expression ASC | DESC ,UNION合并
3、多个查询结果,表的合并操作将两个表的行合并到了一个表中,且不需要对这些行作任何更改。 合并操作与联接相似,因为它们都是将两个表合并起来形成另一个表的方法。然而,它们的合并方法有本质上的不同,结果表的形状如下所示。 注:A和B分别代表两个数据源表。 使用UNION合并不同类型的数据。合并有不同列数的两个表,还可以进行多表合并。,子查询与嵌套查询,子查询是一个嵌套在 SELECT、INSERT、UPDATE 或 DELETE 语句或其他子查询中的查询。任何允许使用表达式的地方都可以使用子查询。 嵌套查询是指将一个查询块嵌套在另一个查询块的WHERE子句或HAVING短语的条件中的查询。嵌套查询中上
4、层的查询块称为外侧查询或父查询,下层查询块称为内层查询或子查询。,联接查询,联接查询是由一个笛卡尔乘积运算再加一个选取运算构成的查询。首先用笛卡尔乘积完成对两个数据集合的乘运算,然后对生成的结果集合进行选取运算,确保只把分别来自两个数据集合并且具有重叠部分的行合并在一起。联接的全部意义在于水平方向上合并两个数据集合,并产生一个新的结果集合。 联接条件可在 FROM 或 WHERE 子句中指定,建议在 FROM 子句中指定联接条件。WHERE 和 HAVING 子句还可以包含搜索条件,以进一步筛选根据联接条件选择的行。 联接可分为以下几类:内部联接、外部联接、交叉联接。,使用CASE函数进行查询,CASE函数用于计算条件列表并返回多个可能结果表达式之一。 CASE函数具有两种格式: 简单 CASE 函数将某个表达式与一组简单表达式进行比较以确定结果。 CASE 搜索函数计算一组布尔表达式以确定结果。 两种格式都支持可选的 ELSE 参数。,Thank you,