文档详情

数据库系统概论第三章.ppt

发布:2025-04-07约8.36千字共10页下载文档
文本预览下载声明

CHECKNULL/NOTNULLUNIQUEFOREIGNKEYPRIMARYKEY完整性约束定义、删除、修改基本表(续II)定义、删除、修改基本表(续III)Createtablestudent(Snochar(5)notnull,Snamechar(20)notnullunique,Ssexchar(2),SageInt,Sdeptchar(15),Primarykey(Sno),Check(sage=18andsage=45));CreatetableSC(Snochar(5)notnull,Cnochar(5)notnull,Gradenumber(4,2),Primarykey(Sno,Cno),Foreignkey(Sno)referencesStudent(Sno)Foreignkey(Cno)referencesCourse(Cno));定义、删除、修改基本表(续IV)AlterTable表名01Add(新列名数据类型[完整性约束])02Drop完整性约束名03Modify(列名数据类型)04定义、删除、修改基本表(续V)SelectSno,SnameFromStudentWhereSnameLike‘刘%’查询所有姓刘的学生的学号、姓名SelectSno,SnameFromStudentWhereSnameLike‘刘__’查询所有姓刘,并且名字为两个汉字的学生的学号、姓名单表查询(续V)查询所选课程没有成绩的学生的学号,所选课程号。SelectSno,CnoFromSCWhereGradeISNULL12单表查询(续VI)ORDERBY子句可以将查询结果按照一个或多个属性列的升序(ASC)或降序(DESC)排序。查询全体学生的情况,并按所在系的升序和年龄的降序排列Select*FromStudentOrderBySdeptAsc,SageDesc单表查询(续VII)Min()求最小值05Max()求最大值04Avg()求数值列的平均值03Sum()对数值列求总和02Count()求元组个数01聚集函数单表查询(续VIII)1234查询学生总数SelectCount(*)FromStudent;查询选修了课程的学生人数SelectCount(DistinctSno)FromSC;计算1号课程的学生平均成绩SelectAVG(Grade)FromSCWhereCno=‘1’;查询选修1号课程的学生最高分数SelectMAX(Grade)FromSCWhereCno=‘1’;单表查询(续IX)SelectCno,Count(Sno)FromSCGroupByCno;查询各门课及其相应选课人数。SelectSno,Count(Sno)FromSCGroupBySnoHavingCount(Sno)=3;查询选课至少为三门的学生的学号及其选课门数。单表查询(续X)连接查询中用来连接两个表的条件称为连接条件或连接谓词,其一般格式为:[表名.]列名比较运算符[表名.]列名其中的列名称为连接字段,连接条件的各个连接字段类型必须是可比的,但不必是相同的。比较运算符主要有:=,,,=,=,!=。当连接运算符为等号时,称为等值连接,否则称非等值连接。连接条件连接查询连接查询(续I)查询每个学生及其所选课程的情况SelectStudent.*,SC.*FromStudent,SCWhereStudent.Sno=SC.Sno;查询每一门课的间接先修课(即先修课的先修课)SelectFIRST.Cno,SECOND.CpnoFromCourseFIRST,CourseSECONDWhereFIRST.Cpno=SECOND.Cno查询所有学生的学号、姓名、所选修课程的课程号和成绩SelectStudent.Sno,Sna

显示全部
相似文档