SQLServer数据库的查询和视图.ppt

SQLServer数据库的查询和视图.ppt

ID:52417349

大小:1.28 MB

页数:86页

时间:2020-04-05

SQLServer数据库的查询和视图.ppt_第1页
SQLServer数据库的查询和视图.ppt_第2页
SQLServer数据库的查询和视图.ppt_第3页
SQLServer数据库的查询和视图.ppt_第4页
SQLServer数据库的查询和视图.ppt_第5页
资源描述:

《SQLServer数据库的查询和视图.ppt》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、第4章数据库的查询和视图4.1数据库的查询4.2视图4.1数据库的查询下面介绍SELECT语句,它是T-SQL的核心。语法主体格式如下:SELECT<输出列>/*指定查询结果输出列*/[INTO新表]/*指定查询结果存入新表*/[FROM{<表源>}[,...]]/*指定查询源:表或视图*/[WHERE<条件>]/*指定查询条件*/[GROUPBY<分组条件>]/*指定查询结果分组条件*/[HAVING<分组统计条件>]/*指定查询结果分组统计条件*/[ORDERBY<排序顺序>]/*指定查询结果排序顺序*/4.1.1选择查询结果输出列1.选择所有列使用“*”表示选择一个表或视

2、图中的所有列。【例4.1】查询pxscj数据库中xsb表的所有记录。T-SQL命令如下:USEpxscjSELECT*FROMxsb4.1.1选择查询结果输出列执行结果如图4.1所示。4.1.1选择查询结果输出列2.选择一个表中指定的列可选择一个表中的部分列,各列名之间要以逗号分隔。【例4.2】查询xsb表中计算机专业学生的学号、姓名和总学分。T-SQL命令如下:SELECT学号,姓名,总学分FROMxsbWHERE专业='计算机'4.1.1选择查询结果输出列3.定义列别名当希望查询结果中的列使用自己选择的列标题时,可以AS更改列标题名,该列标题称为该列的别名。【例4.3】查询

3、xsb表中计算机系同学的学号、姓名和总学分,查询结果中各列的标题分别指定为number、name和mark。T-SQL命令如下:SELECT学号ASnumber,姓名ASname,总学分ASmarkFROMxsbWHERE专业='计算机'执行结果如图4.2所示。4.1.1选择查询结果输出列也可以使用“列别名=表达式”更改列标题。例如:SELECTnumber=学号,name=姓名,mark=总学分FROMxsbWHERE专业='计算机'当自定义的列标题中含有空格时,必须使用引号将标题括起来。例如:SELECT'Studentnumber'=学号,姓名AS'Studentname

4、',mark=总学分FROMxsbWHERE专业='计算机'4.1.1选择查询结果输出列4.替换查询结果中的数据在对表进行查询时,有时希望对所查询的某些列得到的数据进行变换。要替换查询结果中的数据,则可使用CASE表达式,格式为:CASEWHEN条件1THEN表达式1WHEN条件2THEN表达式2……ELSE表达式END4.1.1选择查询结果输出列【例4.4】查询xsb表中计算机系各同学的学号、姓名和总学分,对其总学分按以下规则进行替换,列标题更改为“等级”。若总学分为空值,则替换为“尚未选课”;若总学分小于50,则替换为“不及格”;若总学分在50与52之间,则替换为“合格”;

5、若总学分大于52,则替换为“优秀”。T-SQL命令如下:SELECT学号,姓名,等级=CASEWHEN总学分ISNULLTHEN'尚未选课'WHEN总学分<50THEN'不及格'WHEN总学分>=50and总学分<=52THEN'合格'ELSE'优秀'ENDFROMxsbWHERE专业='计算机'4.1.1选择查询结果输出列执行结果如图4.3所示。4.1.1选择查询结果输出列5.计算列值使用SELECT对列进行查询时,在结果中除了输出列值,也可以输出表达式值。格式为:SELECT表达式[,表达式]【例4.5】查询通信工程专业学生的年龄。T-SQL命令如下,执行结果如图4.4所示

6、。SELECT学号,姓名,出生时间,year(getdate())-year(出生时间)AS年龄FROMxsbWHERE专业='通信工程'计算列值使用算术运算符:+(加)、(减)、*(乘)、/(除)和%(取余),其中,算术运算符(+、、*、/)可以用于任何数字类型的列,包括int、smallint、tinyint、decimal、numeric、float、real、money和smallmoney;%可以用于上述除money和smallmoney以外的数字类型。4.1.1选择查询结果输出列图4.4执行结果4.1.1选择查询结果输出列6.消除结果集中的重复行对表只选择其某些

7、列时,可能会出现重复行。可以使用DISTINCT关键字消除结果集中的重复行,格式为:SELECTDISTINCT

8、ALL列名[,列名…]【例4.6】对pxscj数据库的xsb表只选择专业,消除结果集中的重复行。代码如下,执行结果如图4.5所示。SELECTDISTINCT专业FROMxsb与DISTINCT相反,当使用关键字ALL(默认值)时,将保留结果集的所有行。4.1.1选择查询结果输出列7.限制结果集返回行数如果查询结果集的行数非常多,那么可以使用TOP选项限制其返回的行数。格式为:[

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。