41.3数据操纵语言DML (1)字段表 5)在字段名前可加上一些范围限制,以便进一步优化查询 结果。常用的范围关键字有 ●TPn:显示前n条记录。 SQLQuery1sq-(local). School (sa(53))* SELECT TOP 30 PERCENT *FROM Course 结果消息 Course Code Course Name Credit Academy Code Class Time Cass Place ClassHour LabHour Total Seats 高等数学50207 周一1大节江安一教A10144 120 210002数学分析 3.0207 周一2大节江安一教A10232 66 3100003 空间解析几何30207 周一3大节江安一教A10348 100004 数学专业导论15207 周一4节江安一教A10420 140 511001生物信息学25302周二1大节江安一教10132
5) 在字段名前可加上一些范围限制,以便进一步优化查询 结果。常用的范围关键字有: ⚫ TOP n :显示前n条记录。 ⚫ TOP m PERCENT :显示前m%的记录。 【例4-8】查询Course表中的前3条记录。 SELECT TOP 3 * FROM Course 【例4-9】查询Course表中前30%的记录。 SELECT TOP 30 PERCENT * FROM Course 4.1.3 数据操纵语言DML (1)字段表
4.1.3数据操纵语言DML (1)字段表 sQLQuery1sq- docal). school((3):的字段值具有相同数据,只显 日 SELECT Academycode FROM Course 中开课的学院代码 结果消息 SQLQueryl.sql-(local). School(sa(53) Academy Code a SELECT DISTINCT Academy code 207 L ROM C。uxse 2207 207 3456 4207 302 结果消息 7302 AcademvCode 8302 207 9 305 302 10305 11305 234 305 12401
⚫ DISTINCT:若多条记录的字段值具有相同数据,只显 示一条记录。 【例4-10】查询Course表中开课的学院代码 AcademyCode(与所开课程无关)。 SELECT DISTINCT AcademyCode FROM Course 4.1.3 数据操纵语言DML (1)字段表
4.1.3数据操纵语言DML (1)字段表 6)为了增强查询功能,在 SELECT语句中还可以使用内 部聚合函数,它们被用来进行一些简单的统计或计算 常用统计函数如下表所示。 表4-3常用聚合函数 函数名 函数功能 AVG([ ALL DISTINCT] expression)计算某一字段的平均值(此字段的值必须是数值型) COUNT( ALL DISTINCT]expression)统计某一字段的个数 MAX([ ALL DISTINCT] I expression)查找某一字段的最大值 MING[ALL DISTINCT Expression)查找某一字段的最小值 SUM [ALL DISTINCT]expression)计算某一字段的总和(此字段的值必须是数值型)
6) 为了增强查询功能,在SELECT语句中还可以使用内 部聚合函数,它们被用来进行一些简单的统计或计算。 常用统计函数如下表所示。 表4-13 常用聚合函数 函数名 函数功能 AVG( [ ALL | DISTINCT ] expression ) 计算某一字段的平均值(此字段的值必须是数值型) COUNT( [ ALL | DISTINCT ] expression ) 统计某一字段的个数 MAX( [ ALL | DISTINCT ] expression ) 查找某一字段的最大值 MIN( [ ALL | DISTINCT ] expression ) 查找某一字段的最小值 SUM( [ ALL | DISTINCT ] expression ) 计算某一字段的总和(此字段的值必须是数值型) 表4-3 常用聚合函数 4.1.3 数据操纵语言DML (1)字段表
4.1.3数据操纵语言DML (1)字段表 【例4-11】计算学生的总分、平均分、最高分、最低分及 学生选课数。 SELECT Sum( Grade)as总分,Avg( Grade)as平均分, Max( Grade)as最高分,Min( Grade)as最低分, Count( StudentCode)as课程人数 FROM Grade SQLQuery1. sq-(local).School(sa(53)) Max(rade)a最高分,Mn( rade)a最低分, Count( Studentcode)as课程人数 FROM Grade 田结果消息 总分平均分最高分最低分课程人数 2406480213333100055030
【例4-11】计算学生的总分、平均分、最高分、最低分及 学生选课数。 SELECT Sum (Grade) as 总分, Avg (Grade) as 平均分, Max (Grade) as 最高分, Min (Grade) as 最低分, Count (StudentCode) as 课程人数 FROM Grade 表4-13 常用聚合函数 4.1.3 数据操纵语言DML (1)字段表 4.1.3 数据操纵语言DML (1)字段表
4.1.3数据操纵语言DML (1)字段表 7)使用 SELECT语句复制新表。在字段名后加上INT0表 名可将查询结果复制到一张新表中 对象资源管理器 SQLQuery1. sql-(local). School(sa(53))* 连接O)·要■了S E sELECT StudentName, BirthDay INTO NewTable FROM Studen 日□数据库 SELECT FROM NewTable 田□系统数据库 田□数据库快照 团目 BookStore 结果消息 日目 School Student Name Birth Day □数据库关系图 张三 199701-0100:00:00 日□表 199701-0200:00:00 □系统表 王五 199701-0300:00:00 国 dbo. Academy 199702020000:00 田国 dbo. ClassInfo 5钱七 1997030300:000 Ba dbo. Course 6孙八 1997040400:00:00 199705050000:00 团国dbo. ExcellentStudent 8周十 1997060600:00:00 国dbo. grade 吴十 199801-0100:0000 团国dbo. Major a dbo. NewTable 10郑+二190202000 dbo. Student
7)使用SELECT语句复制新表。在字段名后加上INTO 表 名可将查询结果复制到一张新表中。 【例】将Student表中所有记录的学生姓名、出生日期两 个字段复制一张新表NewTable。 SELECT StudentName, BirthDay INTO NewTable FROM Student 运行后,产生一张表名为NewTable的新表。 4.1.3 数据操纵语言DML (1)字段表