数据库应用技术项目化教程-龙浩-4 简单和复杂查询.pptxVIP

  • 1
  • 0
  • 约3.15千字
  • 约 85页
  • 2023-04-18 发布于浙江
  • 举报

数据库应用技术项目化教程-龙浩-4 简单和复杂查询.pptx

;4.1 简单查询;;GROUP BY:可选参数,用于将查询结果按照指定字段进行分组。;LIMIT:DELETE 于限制查询结果显示的数量。LIMIT后面可以跟2个参数,第一个参数“OFFSET”表示偏移量,如果偏移量为0则从查询结果的第一条记录开始,偏移量为1则从查询结果的中第二条记录开始…以此类推。OFFSET为可选值,如果不指定其默认值为0。第二个参数“记录数”表示返回查询记录的条数。; 基本查询只包括两个部分:要查询的字段和从哪一张数据表中查询。; 1、在SELECT语句中查询表中的所有字段; 查询 tb_xsxxb 表,输出所有学生的详细信息。; ;SELECT 字段名1,字段名2,…… FROM 表名;; 查询 tb_xsxxb 表,输出所有学生的学号和姓名。; ;3、为列取别名(Alias); 查询 tb_xsxxb 表,输出所有学生的学号、姓名、以及此次查询日期和时间,并分别使用“学生学号”,“学生姓名”,“查询日期”作为别名。;4、使用 distinct 关键字取消重复的查询结果; 使用 WHERE 子句 在SELECT语句中,最常见的是使用WHERE 子句指定查询条件对数据进行过滤,其语法格式如下:; where中的条件表达式一般是由下表所示运算符构成。;1、比较运算符的使用;; 日期时间类型是一个很特殊的数据类型,它不仅可以作为一个连续的范围使用between…and,还可以进行加、减以及比较大小的操作。上题还可以写成如下形式:;3、列表运算符的使用;4、模式匹配运算符的使用 ;参数说明; 查询 tb_xsxxb 表,输出姓“赵”的学生的详细信息。 ; ;6、逻辑运算符的使用;逻辑运算符包括以下三种:; ; 查询tb_xsxxb表,输出姓“赵”或者性别代码是“1”的学生的信息。; 在查询结果集中,数据行的排列顺序是按它们在表中的顺序进行排列的。可以使用ORDER BY子句对结果集中的数据行按指定列的值重新排列顺序。其语法格式如下:;可以规定按升序排列(使用参数ASC),也可以指定按降序排列(使用参数DESC),默认参数为ASC;; 查询tb_xsxxb表,输出所有性别代码为2的学生信息,并将查询结果按学号的降序进行排序。; MySQL中提供了一个关键字LIMIT,可以指定查询结果从哪一条记录开始以及一共查询多少条信息。其语法格式如下:;; 查询tb_xsxxb表,输出前3条学生信息。;SELECT * FROM tb_xsxxb LIMIT 4,1;; 集合函数用于对查询结果集中的指定列进行统计,并输出统计值。常用的集合函数如下表所示。; 常用的集合函数。; 查询tb_xsxxb表,统计学生总人数。; ; GROUP BY子句用于对查询结果集按指定的列的值进行分组,列值相同的放在一组。集合函数和GROUP BY子句配合使用,将对查询结果集进行分组统计;其语法格式如下: ; ; 查询tb_xsxxb表,分别统计男女生人数。; 查询tb_xscjb表,统计输出所有课程数目及正考成绩百分制平均分。; 查询tb_xscjb表,统计输出每门课程的所选学生人数及正考成绩百分制最高分。; GROUP BY子句常和HAVING子句配合使用。HAVING子句只能出现在GROUP BY子句后,用于将分组后的结果进行条件筛选。DELETE 都是进行条件筛选功能的子句,WHERE 和 HAVING的区别表现在:; 当一个语句中同时出现了WHERE 子句,GROUP BY子句和HAVING子句,SQL的执行顺序如下: ; 查询tb_xscjb表中课程代码为WK330012,且正考成绩都在70~90之间的学生的学号。;;多表查询的语法格式如下:;其中,连接类型以及运算符有以下几种:; 交叉连接就是将连接的两个表的所有行进行组合,也就是将第一个表的所有行分别与第二个表的每个行连接形成一个新的数据行。连接后生成的结果集的数据行数等于两个表的行数的乘积,列数等于两个表的列数的和。;其语法格式如下所示:; 对tb_xsxxb表和tb_bjdmb表进行交叉连接,观察连接后的结果。;4.3 多表查询; ;内连接的语法格式如下:;内连接包括3种类型; ; 查询学生班级名称,输出学生的学号、姓名、班级名称。; 外连接与内连接不同,在查询时所用的表有主从之分。使用外连接时,以主表中每行数据去匹配从表中的数据行,如果符合连接条件则返回到结果集中;如果没有找到区配行,则在结果集中仍

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档