资源预览内容
第1页 / 共38页
第2页 / 共38页
第3页 / 共38页
第4页 / 共38页
第5页 / 共38页
第6页 / 共38页
第7页 / 共38页
第8页 / 共38页
第9页 / 共38页
第10页 / 共38页
亲,该文档总共38页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第6章 数据操作实例,6.1 查 询 数 据,所谓查询,就是对已经存在于数据库中的数据按特定的组合、条件或次序进行检索。查询功能是数据库最基本也是最重要的功能。,6.1.1 SELECT语句,SELECT语句的语法如下: SELECT select_list INTO new_table_name FROM table_list WHERE search_conditions GROUP BY group_by_list HAVING search_conditions ORDER BY order_list ASC | DESC ,6.1 查 询 数 据,其中各参数的含义如下。 (1)select_list 描述结果集的列,它指定了结果集中要包含的列的名称,是一个逗号分隔的表达式列表。,6.1 查 询 数 据,(2)INTO new_table_name 指定使用结果集来创建新表。new_table_name指定新表的名称。 (3)FROM table_list 指定要从中检索数据的表名或视图名。,6.1 查 询 数 据,(4)WHERE search_conditions WHERE子句是一个筛选条件,它定义了源表中的行要满足SELECT语句的要求所必须达到的条件。 (5)GROUP BY group_by_list GROUP BY子句根据group_by_list列中的值将结果集分成组。,6.1 查 询 数 据,(6)HAVING search_conditions HAVING子句是应用于结果集的附加筛选,用来向使用GROUP BY子句的查询中添加数据过滤准则。 (7)ORDER BY order_list ASC | DESC ORDER BY子句定义了结果集中行的排序顺序。,6.1 查 询 数 据,6.1.2 选择查询,一般查询都不是针对全表所有行的查询,只是从整个表中选出满足指定条件的内容,这就要用到WHERE子句。 以下是选择行的基本语法: SELECT SELECT_LIST FROM TABLE_LIST WHERE SEARCH_CONDITIONS,其中,SEARCH_CONDITIONS为选择查询结果的条件。SQL Server支持比较、范围、列表、字符串匹配等选择方法。,6.1.2 选择查询,1比较搜索条件,Microsoft SQL Server 2005使用表6-1列出的比较运算符。,6.1.2 选择查询,表6-1 比较运算符,6.1.2 选择查询,2范围搜索条件,范围搜索返回介于两个指定值之间的所有值,可分为包括范围和排他范围两种类型。,6.1.2 选择查询,3列表搜索条件,IN关键字使用户可以选择与列表中的任意值匹配的行。,6.1.2 选择查询,4搜索条件中的模式匹配,LIKE关键字搜索与指定模式匹配的字符串、日期或时间值。模式包含要搜索的字符串,字符串中可包含4种通配符的任意组合,搜索条件中可用的通配符如表6-2所示。,6.1.2 选择查询,表6-2 LIKE关键字对应的通配符,6.1.2 选择查询,6.1.3 聚合函数,聚合函数对一组值执行计算,并返回单个值。 Transact-SQL提供下列聚合函数。,1AVG 用于计算查询结果的平均值。 2MAX 该函数用于查找最大值。 3MIN 该函数用于查找最小值。,6.1.3 聚合函数,4SUM 该函数计算查询到的数据值的总和。 5COUNT 该函数可以计算查询到的结果的数目 。,6.1.3 聚合函数,6.1.4 数据分组,使用GROUP BY子句可以按一定的条件对查询到的结果进行分组,再对每一组数据计算统计信息。,6.1.5 子查询,子查询是一个嵌套在SELECT、INSERT、UPDATE或DELETE 语句或其他子查询中的查询。 子查询分为两种:嵌套子查询和相关子查询。,1嵌套子查询,嵌套子查询的执行不依赖于外部查询。嵌套子查询在外部查询之前执行,然后返回数据供外部查询使用,嵌套子查询中不包含对于外部查询的任何引用。,6.1.5 子查询,2相关子查询,相关子查询在执行时,要使用到外部查询的数据。外部查询首先选择数据提供给子查询,然后子查询对数据进行比较,执行结束后再将它的查询结果返回到它的外部查询中。,6.1.5 子查询,6.1.6 表连接,在数据库应用中,经常需要从多个相关的表中查询数据,这就需要进行表连接。,1使用内部连接,内部连接也叫自然连接,是将两个表中的列进行比较,将两个表中满足连接条件的行组合起来作为结果,它是最常见的表连接形式。,6.1.6 表连接,内部连接有以下两种语法形式: SELECT 选择列表 FROM 表名1,表名2 WHERE 表名1.列名1=表名2.列名2 或者 SELECT 选择列表 FROM 表名1 INNER JOIN 表名2 ON 表名1.列名1=表名2.列名2,6.1.6 表连接,2使用外部连接,外部连接会返回FROM子句中提到的至少一个表或视图中的所有行,只要这些行符合任何WHERE或HAVING搜索条件。 外部连接分为左外部连接、右外部连接和全外连接。,6.1.6 表连接,左外部连接对连接条件中左边的表不加限制;右外部连接对连接条件中右边的表不加限制;全外连接对两个表都不加限制,所有两个表中的行都会包括在结果集中。,6.1.6 表连接,6.1.8 在查询基础上创建新表,使用SELECTINTO语句可以在查询的基础上创建新表。 语法为: SELECT选择列表 INTO新表名 FROM表名,其中,参数“新表名”为新创建的表的名称,它必须在当前数据库中不存在。,6.1.8 在查询基础上创建新表,6.2 添 加 数 据,6.2.1 使用SQL Server Management Studio添加数据 在SQL Server Management Studio中,选择相应的表,鼠标右击后,在弹出的快捷菜单中选择“打开表”命令,出现表数据窗口,在该窗口中可以直接进行添加数据操作。,6.2.2 使用Insert语句添加数据,1使用INSERT和VALUES插入行 语法形式为: INSERT INTO table_name(column_list) VALUES(data_values,n),其中,column_list是用逗号分隔的一些列名称,可用来指定为其提供数据的列。 VALUES关键字为表的某一行指定值。,6.2.2 使用Insert语句添加数据,2使用INSERT和SELECT插入行,在INSERT语句中使用SELECT子句可以将一个或多个表或视图中的值添加到另一个表中。使用SELECT子句还可以同时插入多行。 INSERT语句中使用SELECT子句的语法形式为: INSERT INTO table_name(column_list) SELECT select_list FROM table_name,6.2.2 使用Insert语句添加数据,6.3 修 改 数 据,6.3.1 使用SQL Server Management Studio修改数据 在SQL Server Management Studio中,选择相应的表,鼠标右击后,在弹出的快捷菜单中选择“打开表”命令,出现表数据窗口,在该窗口中,可以直接对数据进行修改操作。,6.3.2 使用Update语句修改数据,使用UPDATE语句修改表中数据的语法形式为: UPDATE table_name SET 列名=表达式 SET子句指定要更改的列和这些列的新值。,6.4 删 除 数 据,6.4.1 使用SQL Server Management Studio删除数据 在SQL Server Management Studio中,选择相应的表,鼠标右击后,在弹出的快捷菜单中选择“打开表”命令,出现表数据窗口,在该窗口中选择要删除的记录,右击后,在弹出的快捷菜单中选择“delete”命令。,6.4.2 使用Delete语句删除数据,1DELETE语句 DELETE语句可删除表或视图中的一行或多行。 DELETE语法的简化形式为: DELETE table_or_view FROM table_sources WHERE search_condition,其中,参数table_or_view指定要从中删除行的表或视图。table_or_view中所有符合WHERE搜索条件的行都将被删除。 FROM子句是T-SQL对SQL-92的扩展,它使得DELETE可以先从其他表查询出一个结果集,然后删除table_or_view中与该查询结果相关的行。,6.4.2 使用Delete语句删除数据,
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号