内容简介
本书根据应用型本科教育的特点,结合教学改革和应用实践编写而成。本书采用实例方式讲授SQL Server 2014数据库的应用,以理论够用、实用,重实践为原则,使读者能够快速、轻松地掌握SQL Server数据库技术与应用。全书共13章,内容包括数据库技术基础、SQL Server 2014系统概述、数据库及其管理、数据库中表的基本操作、SQL Server 2014的数据查询、索引及其应用、视图及其应用、存储过程与触发器、SQL Server 2014的安全管理、SQL Server 2014程序设计、数据库日常维护与管理、SQL Server 2014编程接口以及在线考试系统开发实例。
本书内容全面翔实,适用于应用型本科或高等专科学校,可以作为数据库初学者的入门教材以及数据库系统工程师的培训教材,也适合作为SQL Server应用开发人员的参考资料。
摘要
第5章chapter5
SQL Server 2014的数据查询1.1微型计算机简介教学提示: 数据库查询是数据库系统中很基本的也是很重要的操作。本章知识点较多,覆盖面广,教学中所涉及的数据全在Book1数据库中,可参照11.5节附加Book1数据库。本章教学内容是本书的重点之一。
教学目标: 通过本章的教学,要求掌握各种查询方法,包括单表条件查询、单表多条件查询、多表多条件查询、嵌套查询,并能对查询结果进行排序、分组和汇总等操作。5.1TransactSQL概述
通过前面几章的学习,读者已经知道SQL语言是一种用于存取和查询数据,更新并管理关系数据库系统的数据查询和编程语言。1992年ISO(靠前标准化组织)和IEC(靠前电子技术委员会)共同发布了名为SQL1992的SQL靠前标准。ANSI(美国国家标准局)在美国发布了相应的ANSL SQL1992标准,该标准也称ANSI SQL。尽管不同的关系数据库使用不同的SQL版本,但多数都按ANSI SQL标准执行。SQL Server使用ANSI SQL92的扩展集,即通常所说的TransactSQL,简写为TSQL,它是对标准SQL程序语言的增强,是用于应用程序和SQL Server之间通信的主要语言。在SQL语言的基础上扩充了许多功能,包括数据定义语言、数据操作语言、存储过程、系统表、函数、数据类型和流控语句。
TransactSQL语言的语法结构类似于英语,易学易用,书写灵活。例如,显示图书的所有信息,写成SQL语句为USE Book1 SELECT FROM book1为了更好地编写和调试代码,本书推荐以下书写形式: USE Book1
SELECT
FROM book1SQL语言是一种说明性语言。在上例中,用户只需告诉SQL Server 2005显示book1表的所有信息,而不必说明如何去做。SQL Server 2005会根据用户所写的SQL语句选择很好的执行策略。也就是说,用户不需要知道数据库中的数据是如何定义和怎样存储的,只需知道表的名称或列的名称(上述例子中用户并不知道列名),就可以从表中查询出需要的信息。
SQL语言特别适用于客户端/服务器体系结构,客户用SQL语句发出请求,服务器处理客户发出的请求。客户与服务器之间的任务划分明确。SQL本身不是独立的程序设计语言,不能进行屏幕界面设计和控制打印格式,因此,通常将SQL语言嵌入到用程序设计语言(如Visual Basic等)编写的程序中使用。
SQL语言由数据定义语言(DDL)、数据操作语言(DML)和数据控制语言(DCL)组成。
(1) 数据定义语言用来定义和管理数据库、表和视图这样的数据对象。DDL通常包括每个对象的CREATE、ALTER和DROP命令。例如,CREATE TABLE、ALTER TABLE 和DROP TABLE语句通常用于创建表、修改其属性(如增加或删除列)和删除表。
(2) 数据操作语言用于查询和操作数据。它使用SELECT、INSERT、UPDATE、DELETE语句,这些语句允许用户查询数据、插入数据行、修改表中的数据、删除表中的数据行。
(3) 数据控制语言用于控制对数据库对象操作的权限。它使用GRANT和REVOKE语句授予或收回用户或用户组操作数据库对象的权限。
◆SQL Server数据库基础及应用实践教程第◆5章SQL Server 2014的数据查询5.2SELECT语句
使用SELECT语句进行数据查询是数据库的核心操作。SQL Server通过SELECT语句提供了较完整的数据查询功能,该语句具有灵活的使用方式和丰富的功能。
5.2.1打开一个数据库
在对Book1数据库中的数据进行操作之前,必须先使用USE命令打开Book1数据库,并使用GO语句作为结束行: USE Book1
GO5.2.2SELECT语句
SELECT语句主要用于查询数据,也可以用来向局部变量赋值。常用的SELECT语句的语法为SELECT 选择列表
FROM 表的列表
WHERE 查询的条件选择列表可以包括几个列名或者表达式,用逗号隔开,用来指示应该返回哪些数据。表达式可以是列名、函数或常数的列表。FROM子句指定提供数据的表或视图的名称。当选择列表中含有列名时,每一个SELECT子句必须带一个FROM子句。WHERE子句用于给出查询条件。
【例5.1】从book1表中查询编号为XH5468的书的信息,要求显示编号、书名和ISBN号。
【实例分析】从第4章的介绍中知道book1表有6列,分别为编号、ISBN号、书名、定价、出版社和出版日期。在使用Book1数据库之前,应先启动数据库服务器,然后使用USE命令打开Book1数据库。可以选择在SQL Server Management Studio查询窗口中执行SQL语句,也可以在“对象资源管理器”面板中执行SQL语句。
在SQL Server Management Studio查询窗口中运行如下命令: USE Book1
SELECT 编号,书名,ISBN号
FROM book1
WHERE 编号='XH5468'
GO运行结果如图5.1所示。
图5.1对编号、书名和ISBN号的查询
下面详细介绍SELECT语句的各种使用方法。