《精编》如何使用SQL Server表中数据操作

上传人:tang****xu4 文档编号:133905444 上传时间:2020-05-31 格式:PPT 页数:58 大小:162KB
返回 下载 相关 举报
《精编》如何使用SQL Server表中数据操作_第1页
第1页 / 共58页
《精编》如何使用SQL Server表中数据操作_第2页
第2页 / 共58页
《精编》如何使用SQL Server表中数据操作_第3页
第3页 / 共58页
《精编》如何使用SQL Server表中数据操作_第4页
第4页 / 共58页
《精编》如何使用SQL Server表中数据操作_第5页
第5页 / 共58页
点击查看更多>>
资源描述

《《精编》如何使用SQL Server表中数据操作》由会员分享,可在线阅读,更多相关《《精编》如何使用SQL Server表中数据操作(58页珍藏版)》请在金锄头文库上搜索。

1、第5章表中数据的操作 本章学习目标 掌握如何在SQLServer管理控制台中操作表中的数据掌握使用SELECT语句查询数据的方法掌握使用INSERT语句插入数据的方法掌握使用UPDATE语句更新数据的方法掌握使用DELETE语句删除数据的方法 5 1在SQLServer管理控制台中操作表中的数据 表中数据的操作包括数据的查询 插入 修改和删除 可以在SQLServer管理控制台中非常方便地对数据执行各种操作 也可以利用Transact SQL中的命令完成相应的功能 在SQLServer管理控制台中 打开指定的数据库并展开 表 对象 右击要操作的数据表 并从弹出的快捷菜单中选择 打开表 选项 就

2、会看到数据表数据显示结果窗口 5 1在SQLServer管理控制台中操作表中的数据 将光标定位到最后一条记录后面 输入新的记录就可以完成插入操作 将光标定位到某条记录 改变某个数据的值就可以完成更新操作 右击某条记录 从弹出的快捷菜单中选择 删除 选项就可以完成记录的删除操作 5 2查询数据 SELECT语句可以根据实际需要从一个或多个表中选择一个或多个行或列 SELECTselect list INTOnew table FROMtable source WHEREsearch condition GROUPBYgroup by expression HAVINGsearch conditi

3、on ORDERBYorder expression ASC DESC 5 2查询数据 在SELECT语句中至少要包含两个子句 SELECT和FROM SELECT指定查询的某些选项 FROM指定查询的表 例如 查询T STUDENT表中所有的数据 可以写为 SELECT FROMT STUDENT 5 2 1SELECT子句 SELECT子句的语法格式为 SELECT ALL DISTINCT TOPn PERCENT WITHTIES table name view name table alias column name expression IDENTITYCOL ROWGUIDCOL

4、 AS column alias column alias expression n 5 2查询数据 ALL 指定显示所有记录 包括重复行 ALL是默认设置 DISTINCT 指定显示所有记录 但不包括重复行 TOPn PERCENT 指定从查询结果中返回前n行 select list 指定返回结果中的列 如果有多个列 用逗号分隔 5 2查询数据 表示所有列 column name 指定是要返回的列名 expression 是列名 常量 函数以及由运算符连接的列名 常量和函数的任意组合 或者是子查询 5 2查询数据 例5 2 1 1 查询表中的所有记录 2 查询前3条记录的S NUMBER S

5、 NAME和BIRTHDAY字段 3 查询所有记录的SEX字段 并去掉重复值 4 查询所有记录的S NUMBER 别名为学号 S NAME 别名为姓名 和BIRTHDAY 别名为出生日期 字段 5 2查询数据 别名的三种定义方法 分别为 列别名 列名列名AS列别名列名列别名注意 列别名的使用范围 列别名只在定义的语句中有效 5 2查询数据 5 查询得到每个学生的年龄 6 统计男同学的人数 5 2 2INTO子句 INTO子句用于创建新表并将查询结果插入新表中 其语法为 INTOnew table 其中的参数new table用于指定新表的名称 例5 2 2 使用INTO子句创建一个新表 T S

6、TUDENT1 5 2 3FROM子句 FROM子句用于指定要查询的表 其语法如下 FROM n table name AS table alias WITH n view name AS table alias rowset function AS table alias OPENXML derived table AS table alias column alias n 5 2 3FROM子句 ON CROSSJOIN INNER LEFT RIGHT FULL OUTER JOIN 5 2 3FROM子句 其中的参数说明如下 指定用于SELECT语句的表 视图 派生表和联接表 tabl

7、e name AS table alias 指定表名和可选别名 view name AS table alias 指定视图和可选别名 定义两个或多个表的积联合 指定联合操作的类型 5 2 3FROM子句 INNER 指定返回参与联合的数据表中所有相匹配的行 丢弃两个表中不匹配的行 如果不指定联接类型 则这是默认设置 LEFT OUTER 指定返回参与联合的数据表中所有相匹配的行和所有来自左表的不符合指定条件的行 5 2 3FROM子句 RIGHT OUTER 指定返回参与联合的数据表中所有相匹配的行和所有来自右表的不符合指定条件的行 FULL OUTER 指定返回参与联合的数据表中所有相匹配的

8、行和所有来自左 右表的不符合指定条件的行 5 2 3FROM子句 JOIN 表示所指定的数据表或视图需要进行联合 ON 指定联合的条件 例5 2 3 查询表T SCORE和表T STUDENT中的数据 满足条件 T STUDENT S NUMBER T SCORE S NUMBER 5 2 4WHERE子句 WHERE子句是条件子句 用来限定查询的内容 其语句格式如下 WHEREsearch condition 指定搜索条件 5 2 4WHERE子句 在WHERE子句中可以使用比较运算符或逻辑运算符连接起来的表达式 表达式是符号和运算符的一种组合 SQLServer2005数据库引擎将处理该组

9、合以获得单个数据值 简单表达式可以是一个常量 变量 列或标量函数 可以用运算符将两个或更多的简单表达式连接起来组成复杂表达式 5 2 4WHERE子句 1 使用比较运算符连接的表达式expressionoperatorexpressionexpression 可以是列名 常量 函数 变量 标量子查询 或者是由运算符或子查询连接的列名 常量和函数的任意组合 该表达式还可以包含CASE函数 5 2 4WHERE子句 Operator 比较运算符 WHERE子句中允许出现的比较运算符有 等于 大于 对于等于 不等于 不大于 不小于 不等于 例5 2 4 从表T SCORE中查询不及格学生的信息 5

10、2 4WHERE子句 2 逻辑表达式在Transact SQL中可以使用的逻辑运算符有三个 NOT 逻辑反 对指定的布尔表达式求反 AND 逻辑与 只有当两个条件都是TRUE时取值为TRUE OR 逻辑或 当两个条件中任何一个条件是TRUE时取值为TRUE 5 2 4WHERE子句 在三个逻辑运算符中 NOT的优先级最高 AND次之 OR最低 在逻辑表达式中有三种可能的取值 True False Unkown 其中的Unkown是由值为NULL的数据参与逻辑运算得到的结果 例5 2 5 从表T STUDENT中查询是党员的男学生的信息 5 2 4WHERE子句 3 BETWEEN关键字使用BE

11、TWEEN关键字可以限定查询范围 其语法格式如下 test expression NOT BETWEENbegin expressionANDend expression 5 2 4WHERE子句 其中的参数说明如下 test expression 是用来在由begin expression和end expression定义的范围内进行测试的表达式 test expression必须与begin expression和end expression具有相同的数据类型 NOT 查询不在指定范围内的数据 begin expression 指定数据取值的上限 end expression 指定数据取值

12、的下限 例5 2 6 从表T SCORE中查询成绩在80 90分的学生的信息 5 2 4WHERE子句 4 IN关键字使用IN关键字可以确定给定的值是否与子查询或列表中的值相匹配 其语法格式如下 test expression NOT IN subquery expression n test expression 任何有效的MicrosoftSQLServer表达式 Subquery 包含某列结果集的子查询 expression n 一个表达式列表 用来测试是否匹配 5 2 4WHERE子句 说明 如果test expression与subquery返回的任何值相等 或与逗号分隔的列表中的任

13、何expression相等 那么结果值就为TRUE 否则 结果值为FALSE 例5 2 7 从表T STUDENT中查询所有非党员的学生信息 5 2 4WHERE子句 5 LIKE关键字使用LIKE关键字可以确定给定的字符串是否与指定的模式匹配 其语法格式如下 match expression NOT LIKEpattern ESCAPEescape character match expression 任何字符串数据类型的有效SQLServer表达式 Pattern 指定match expression中的搜索模式 可以包含下列有效SQLServer通配符 5 2 4WHERE子句 可匹配任

14、意类型和长度的字符串 下划线 可匹配任何单个字符 指定范围或集合中的任何单个字符 不属于指定范围或集合的任何单个字符 escape character 允许在字符串中搜索通配符而不是将其作为通配符使用 例5 2 8 从表T STUDENT中查询所有姓张的学生信息 5 2 4WHERE子句 6 NULL关键字在WHERE子句中不能使用比较运算符对空值进行判断 只能使用空值表达式来判断某个表达式是否为空值 如下所示 表达式ISNULL或表达式ISNOTNULL 5 2 5GROUPBY子句 GROUPBY子句将查询结果分组 其语法格式如下 GROUPBY ALL group by expressi

15、on n 其中的参数说明如下 ALL 包含所有的组和结果 甚至包含那些不满足WHERE子句指定搜索条件的组和结果 如果指定了ALL 组中不满足搜索条件的空值也将作为一个组 5 2 5GROUPBY子句 group by expression 执行分组的表达式 可以是列或引用列的非聚合表达式 例5 2 9 对表T STUDENT中的记录按性别进行分组 查询相应的人数 5 2 6HAVING子句 HAVING子句为分组或集合指定搜索条件 通常与GROUPBY子句一起使用 其语法格式为 HAVING 其中的参数 search condition用来指定搜索条件 5 2 6HAVING子句 说明 当H

16、AVING与GROUPBYALL一起使用时 HAVING子句替代ALL 在HAVING子句中不能使用text image和ntext数据类型 例5 2 10 在表T SCORE中求选修了两门及以上课程的学生学号 5 2 7ORDERBY子句 ORDERBY子句用于指定对查询结果排序 如果在SELECT中同时指定了TOP ORDERBY无效 其语法格式如下 ORDERBY order by expression ASC DESC n 其中的参数说明如下 order by expression 指定要排序的列 5 2 7ORDERBY子句 说明 可以指定多个列 在ORDERBY子句中不能使用ntext text和image列 ASC 指定按递增顺序 即从最低值到最高值对指定列中的值进行排序 DESC 指定按递减顺序 即从最高值到最低值对指定列中的值进行排序 5 2 7ORDERBY子句 说明 空值被视为最低的值 例5 2 11 在表T SCORE中查询选修了 10010218 课程的学生成绩 并按成绩的降序进行排序 5 2 8联合查询 联合查询是指将两个或两个以上的SELECT语句通过UN

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号