3.4-数据查询SQL语句-1.ppt
3.4-1 数据查询SQL语句单表数据查询1 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发理解数据查询SQL语句基本结构掌握单表指定列数据SQL查询掌握单表指定行数据SQL查询掌握单表指定行列数据SQL查询掌握单表条件数据SQL查询掌握单表数据SQL查询结果集排序【本节学习目标】2 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发一、数据查询SQL语句格式SELECT ALL|DISTINCT ,INTO FROM ,WHERE GROUP BY HAVING ORDER BY ASC|DESC ;3 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发二、从单个表读取指定列在关系数据库中,最简单的数据查询操作就是从单个关系表中读取指定列的数据,即关系的投影操作。SELECT ,FROM ;(投影)关系表结果集1.语句基本格式4 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发例 学生信息表Student原始数据如下图所示。2.数据查询实例要求:从Student表中读取学生的学号、姓名、专业列数据输出。5 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发3.数据查询SQL语句及执行结果运行按钮SQL语句结果集6 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发若希望从Student表查询所有列数据,其数据查询SQL语句及执行结果如下:SQL语句结果集运行按钮7 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发若希望从Student表中查询专业列(Major)数据,其数据查询SQL语句及执行结果如下:SQL语句结果集运行按钮8 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发为了在结果集中过滤重复数据,可以在查询语句的输出列前加入DISTINCT关键字,其执行结果如下。SQL语句结果集运行按钮9 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发三、从单个表读取指定行SQL查询语句也可以从一个关系表中读取满足条件的指定行数据,即完成关系数据的元组选择操作。SELECT *FROM WHERE ;1.语句基本格式条件(选择)关系表结果集10 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发例 学生信息表Student原始数据如下图所示。2.数据查询实例要求:从Student表中查询男生数据。11 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发3.数据查询SQL语句及执行结果运行按钮SQL语句结果集12 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发四、从单个表读取指定行和列在SQL查询语句中,还可以从一个关系表中读取指定行与指定列范围内的数据。既完成关系的行选择,又完成关系的列投影操作。SELECT ,FROM WHERE ;(投影)关系表结果集条件(选择)1.语句基本格式13 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发例 学生信息表Student原始数据如下图所示。2.数据查询实例要求:从Student表中查询性别为“男”的学生学号、学生姓名、性别、专业数据。14 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发3.数据查询SQL语句及执行结果运行按钮SQL语句结果集15 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发在WHERE子句中可以使用如下方式,指定范围数据。1)使用BETWEEN.AND关键词来限定列值范围,还可以使用关键词LIKE与通配符来限定查询条件。2)使用通配符来限定字符串数据范围。下划线(_)通配符用于代表一个未指定的字符。百分号(%)通配符用于代表一个或多个未指定的字符。五、Where条件子句16 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发例1 若要从STUDENT表中查询出生日期在“2000-01-01”到“2000-12-30”的学生数据。其数据查询SQL语句如下:SELECT *FROM STUDENTWHERE BirthDay BETWEEN 2000-01-01 AND 2000-12-30;17 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发运行按钮SQL语句结果集数据查询SQL语句及执行结果:18 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发例2 若要从STUDENT表中查询邮箱域名为“”的学生数据。其数据查询SQL语句如下:SELECT *FROM STUDENTWHERE Email LIKE%;19 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发运行按钮SQL语句结果集数据查询SQL语句及执行结果:20 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发在SQL查询Where子句中,还可以使用多个条件表达式,并通过逻辑运算符(AND、OR、NOT)连接操作,以及使用IN或NOT IN关键词,进一步限定结果集的数据范围。例3 从STUDENT表中查询性别为“男”,并且专业为“软件工程”的学生数据,其数据查询SQL语句如下。SELECT StudentID,StudentName,StudentGender,MajorFROM STUDENTWHERE Major=软件工程 AND StudentGender=男;21 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发运行按钮SQL语句结果集数据查询SQL语句及执行结果:22 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发例4 在STUDENT表查询时,使用IN关键字限定范围”计算机应用”专业的学生。其SQL语句如下所示。SELECT StudentID,StudentName,StudentGender,MajorFROM STUDENTWHERE Major IN (计算机应用);23 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发运行按钮SQL语句结果集数据查询SQL语句及执行结果:24 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发六、对结果集进行排序在SELECT查询语句返回的结果集中,行的顺序是任意的。如果需要结果集排序,可以在SELECT语句中加入ORDER BY关键字。例 若要从STUDENT表中按学生出生日期降序输出学生数据,其数据查询SQL语句如下。SELECT *FROM STUDENTORDER BY Birthday DESC;在默认情况下,SQL查询的结果集是按指定列值的升序排列。可以使用关键词ASC和DESC选定排序是升序或降序。25 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发运行按钮SQL语句结果集数据查询SQL语句及执行结果:26 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发如果结果集需要按多个列排序,可以分别加入关键字ASC或DESC改变。例 若要将STUDENT表查询数据,首先按出生日期降序排列,然后按姓名升序排列,其数据查询SQL语句如下:SELECT *FROM STUDENTORDER BY Birthday DESC,StudentName ASC;27 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发运行按钮SQL语句结果集数据查询SQL语句及执行结果:28 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发本节学习结束!