SQL Server数据库实践教程 课件 05-单表查询(一)_第1页
SQL Server数据库实践教程 课件 05-单表查询(一)_第2页
SQL Server数据库实践教程 课件 05-单表查询(一)_第3页
SQL Server数据库实践教程 课件 05-单表查询(一)_第4页
SQL Server数据库实践教程 课件 05-单表查询(一)_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

SQLServer数据库实践SQL语言一般分四类数据定义语言(DDL,DataDefinitionLanguage)数据操纵语言(DML,DataManipulationLanguage)数据查询语言(DQL,DataQuery

Language)数据控制语言(DCL,DataControlLanguage)(+事务)√√√√数据查询语法SELECT[ALL|DISTINCT][TOPn|PERCENT]<输出列表>]…FROM数据源列表[WHERE<条件表达式>][GROUPBY<分组表达式>[HAVING<条件表达式>]][ORDERBY<排序表达式>[ASC|DESC]]stuDB数据库三张表数据查询目录1、单表查询2、连接查询3、嵌套查询4、集合查询5、基于派生表的查询1、单表查询单表查询仅涉及一个表,又分为:选择表中的若干列选择表中的若干元组

ORDERBY排序子句聚集函数

GROUPBY分组子句①

选择表中的若干列【例题5-1】查询全体学生的姓名和民族。SELECT[ALL|DISTINCT][TOPn|PERCENT]<输出列表>]…FROM数据源列表[WHERE<条件表达式>][GROUPBY<分组表达式>[HAVING<条件表达式>]][ORDERBY<排序表达式>[ASC|DESC]]SELECTName,NationFROM

Student①

选择表中的若干列【例题5-2】查询全体学生的姓名、民族和性别。SELECT[ALL|DISTINCT][TOPn|PERCENT]<输出列表>]…FROM数据源列表[WHERE<条件表达式>][GROUPBY<分组表达式>[HAVING<条件表达式>]][ORDERBY<排序表达式>[ASC|DESC]]SELECTName,Nation,SexFROM

Student注意:列的顺序①

选择表中的若干列【例题5-3】查询全体学生的详细信息。SELECT[ALL|DISTINCT][TOPn|PERCENT]<输出列表>]…FROM数据源列表[WHERE<条件表达式>][GROUPBY<分组表达式>[HAVING<条件表达式>]][ORDERBY<排序表达式>[ASC|DESC]]SELECT

Sno,Name,Sex,Nation,Birthday

FROM

Student或者SELECT

*

FROM

Student习题1.查询所有课程的课程名和学分2.查询课程的所有信息查询语法SELECT

<输出列表>]…FROM数据源列表习题1.查询所有课程的课程名和学分

selectcname,creditfromcourse2.查询课程的所有信息查询语法SELECT

<输出列表>]…FROM数据源列表习题1.查询所有课程的课程名和学分

selectcname,creditfromcourse2.查询课程的所有信息

select*fromcourseselectCno,cname,hours,credit,Semesterfromcourse查询语法SELECT

<输出列表>]…FROM数据源列表①选择表中的若干列查询经过计算的值SELECT子句的<输出列表>可以为:算术表达式字符串常量函数列别名SELECT[ALL|DISTINCT][TOPn|PERCENT]<输出列表>]…FROM数据源列表[WHERE<条件表达式>][GROUPBY<分组表达式>[HAVING<条件表达式>]][ORDERBY<排序表达式>[ASC|DESC]]①

选择表中的若干列【例题5-4】查询学生的姓名及年龄。SELECT[ALL|DISTINCT][TOPn|PERCENT]<输出列表>]…FROM数据源列表[WHERE<条件表达式>][GROUPBY<分组表达式>[HAVING<条件表达式>]][ORDERBY<排序表达式>[ASC|DESC]]SELECT

Name,YEAR(GETDATE())-YEAR(Birthday)

FROM

Student①

选择表中的若干列【例题5-4】查询学生的姓名及年龄。GETDATE()函数取系统当前日期YEAR()函数取日期中的年定义列别名有三种方法①别名=列名②列名as别名③列名别名SELECT

Name,YEAR(GETDATE())-YEAR(Birthday)

FROM

StudentSELECTName,nl=YEAR(GETDATE())-YEAR(Birthday)FROMStudentSELECTName,YEAR(GETDATE())-YEAR(Birthday)asnl

FROMStudentSELECTName,YEAR(GETDATE())-YEAR(Birthday)nl

FROMStudent例:SELECTname,birthday,YEAR(birthday)年,month(birthday)月,day(birthday)日FROMStudent常用日期函数

Getdate():返回服务器当前系统日期和时间

year(DATA):返回日期中的年

month(DATA):返回日期中的月

day(DATA):返回日期中的日②

选择表中的若干元组【例题5-5】查询学生分布在哪些民族

SELECTNationFROMStudent等价于:SELECTALLNationFROMStudent SELECT[ALL|DISTINCT][TOPn|PERCENT]<输出列表>]…FROM数据源列表[WHERE<条件表达式>][GROUPBY<分组表达式>[HAVING<条件表达式>]][ORDERBY<排序表达式>[ASC|DESC]]②

选择表中的若干元组【例题5-5】查询学生分布在哪些民族

SELECTDISTINCTNationFROMStudent SELECT[ALL|DISTINCT][TOPn|PERCENT]<输出列表>]…FROM数据源列表[WHERE<条件表达式>][GROUPBY<分组表达式>[HAVING<条件表达式>]][ORDERBY<排序表达式>[ASC|DESC]]说明:DISTINCT关键词,去掉查询结果中重复的行②

选择表中的若干元组【例题5-7】查询哪些学生是少数民族,显示学生姓名和民族。SELECTName,NationFROMStudentWHERENation<>'汉族'SELECT[ALL|DISTINCT][TOPn|PERCENT]<输出列表>]…FROM数据源列表[WHERE<条件表达式>][GROUPBY<分组表达式>[HAVING<条件表达式>]][ORDERBY<排序表达式>[ASC|DESC]]WHERE

子句中常用的查询运算符查询条件谓词比较=,>,<,>=,<=,!=,<>,!>,!<;NOT+上述比较运算符确定范围BETWEENAND,NOTBETWEENAND确定集合IN,NOTIN字符匹配LIKE,NOTLIKE空值ISNULL,ISNOTNULL多重条件(逻辑运算)AND,OR,NOT②

选择表中的若干元组【例题5-8】查询年龄在19~23岁(包括19和23岁)之间的学生的学号、姓名、出生日期。1:SELECTSno,Name,BirthdayFROMStudent

WHEREYEAR(GETDATE())-YEAR(Birthday)BETWEEN19AND232:SELECTSno,Name,BirthdayFROMStudent

WHEREYEAR(GETDATE())-YEAR(Birthday)>=19

ANDYEAR(GETDATE())-YEAR(Birthday)<=23操作练习实验4单表查询(一)1~5题

选择表中的若干元组【例题5-9】查询民族为“汉族”或者“满族”的学生详细信息。SELECT*FROMStudentWHERENationin('汉族','满族')或者SELECT*FROMStudentWHERENation='汉族'orNation='满族'②

选择表中的若干元组【例题5-10】查询哪些学生选课了还没有考试成绩,显示学号,课程号。SELECTSno,CnoFROMSCWHEREGradeisNULL判断空值不能用等号=②

选择表中的若干元组-模糊查询【例题5-11】查询哪些学生姓名中含有“南”字。SELECT*FROMStudentWHERENameLIKE'%南%'模糊查询通配符:%:任意长度_:单个字符②

选择表中的若干元组-模糊查询【例题5-13】找出所有姓“张”和姓“江”的员工信息。SELECT*FROMStudentWHERENameLIKE'[张,江]%'SELECT*FROMStudentWHEREsubstring(Name,1,1)IN('张','江')SELECT*FROMStudentWHEREl

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论