ImageVerifierCode 换一换
格式:PPT , 页数:25 ,大小:122.50KB ,
资源ID:8086158      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-8086158.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(关系数据库标准语言SQL.ppt)为本站会员(kpmy5893)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

关系数据库标准语言SQL.ppt

1、10.6 关系数据库标准语言 SQL,本节内容,SQL概述 数据定义 数据查询 数据操纵,SQL概述,SQL是结构化查询语言Structured Query Language的缩写。可以说查询是SQL语言的重要组成部分,但不是全部,SQL还包括数据定义、数据操纵和数据控制功能等部分。SQL已成为关系数据库的标准数据语言,所以现在的关系数据库管理系统都支持SQL。 SQL的特点: (1)一体化。集数据定义、数据查询、数据操纵、数据控制于一体。 (2)高度非过程化。只需告诉计算机做什么(what),无需告诉计算机怎么做(how)。 (3)功能强大,简捷易用。 (4)提供两种使用方式:命令方式和嵌入

2、方式。,SQL命令动词,表结构,表数据,create,alter,drop,select,insert,update,delete,创建,修改,删除,增加,更新,删除,查询,10.6表结构定义(数据定义),SQL语言的数据定义功能包括表结构的增、删、改。 内容: 用create table 表名()创建一个表的结构; 用drop table 表名删除一个表(结构及数据); 用alter table 表名 add|drop|alter修改表的结构。,10.6.1 定义表的结构 考查一下表的结构,它由如下两部分组成:字段定义(字段名,类型,宽度,精度,索引,空值否)主关键字和外部关键字 1、cre

3、ate table 语句基本结构create table 表名(字段名1 类型(宽度,精度)NULL|NOT NULL,字段名2 类型(宽度,精度)NULL|NOT NULL ) 例1:建立仓库表create table 仓库(仓库号 CHAR(3) NOT NULL,城市 CHAR(10),面积 INTEGER),(2)当主关键字或外部关键字是单个属性时更为简捷的方法是直接在该字段的定义后加上primary key或references 表名。 建立班级表时加入主键:例1 create table 班级 (班级代码 integer not null primary KEY,名称 char(1

4、2),班长 char(8),电话 CHAR(12) 建立学生表时加入主键: 例2 create table 学生 (学号 char(12) not null primary key,姓名 char(8),性别 char(2),籍贯 char(8),班级代码 integer,计算机 integer,外语 integer,数学 integer,平均成绩 integer,总成绩 integer),10.6.2 删除数据库中的表drop table 表名功能是直接从数据库中删除表名所对应的表。 例:删除学生表 例3: drop table 学生 10.6.3 修改表的结构alter table 表名

5、add|drop|alter,其中add、drop、alter分别表示增、删、改。 1、增加新字段 例4 : alter table 学生 add 评语 char(10) 2、删除字段 例5 : alter table 学生 drop 评语,3、 修改旧字段alter table 表名 alter column 字段名 类型(宽度,精度)NULL|NOT NULL set default 表达式set checkdrop defaultdrop check 将计算机字段的类型改为字符型 例6: Alter table 学生 alter 计算机 char(10),10.7 数据操纵,INSERT

6、数据的插入 UPDATE数据的更新(修改) DELETE数据的删除,10.7.1 插入记录 格式:insert into 表名(字段名1,字段名2,) values(表达式1,表达式2,) 功能:在指定表中增加一条新记录。 例7:在班级表中增加一条记录。,INSERT INTO 班级表 ( 班级代码, 名称, 班长, 电话 ) VALUES (1, “企业管理”, “刘平“, “7668000“),例8:在仓库表中增加一条记录。,insert into 仓库表 values(“WH5“,“太原“,380) 例9:在学生表中增加记录 insert into 学生表 (学号,姓名,性别) valu

7、es(“200801011110“,“李平“,“女“) 注意当前记录其它未插入数据的字段处为空。,10.7.2 更新记录格式:update 表名set 字段名1=表达式1,字段名2=表达式2where 条件 功能:更新满足条件记录的字段值。 例10:给WH1仓库中的全体职工工资上调10%update 职工 set 工资=工资*1.1 where 仓库号=“WH1” 例11:求所有学生的平均成绩和总成绩。update 学生 set 平均成绩=(数学+外语+计算机)/3,总成绩=数学+外语+计算机 例12:在仓库表中将所有城市名前加上“中国”两字。update 仓库 set 城市=“中国”+tri

8、m(城市),10.7.3 删除记录格式: delete from 表名 where 条件 功能:删除表中满足条件的记录。 例13:删除职工表中仓库号值为WH2的元组。delete from 职工 where 仓库号=“WH2” 例14:删除仓库表中仓库号值为WH2的元组。delete from 仓库 where 仓库号=“WH2”,10.8 数据查询select,查询(select语句)是SQL的核心。 基本格式:SELECT 目标列表达式 输出项列表FROM 源表或视图列表 数据来源WHERE 查询条件,投影,联接,选择,10.8.1 目标列表达式 1、查询指定列(投影运算)在大多数情况下,

9、用户只对表中的部分字段感兴趣,此时可在SELECT子句的目标列表达式中指定要查询的属性。 例15:查询全体职工的职工号和工资select 职工号,工资 from 职工 注意:目标列表达式中的字段顺序应和题意要求一致,而不受表中字段顺序的影响。 2、去掉重复行 例16:从职工表中检索所有工资值select distinct 工资 from 职工,由于有些职工的工资是相同的,输出结果中可能有重复行,此时,可在目标列表达式前加distinct短语以去掉重复。即: 例17: select distinct 工资 from 职工 3、查询全部列要将表中所有属性列列出,一种方法是在SELECT后列出所有列

10、名,另一种更为简单,将目标列表达式用*代替。 例18:检索仓库关系中的所有信息select * from 仓库 例19:查询仓库“WH2”中所有职工的所有基本情况。select * from 职工 where 仓库号=“WH2” 4、查询经过计算的值SELECT子句的目标列表达式不仅可以是表中的属性列,还可以是含有各种运算及函数的表达式。,集函数(字段函数)在SELECT语句中可使用的函数:count(),sum(),avg(),max(),min(),分别用于计数、求和、求平均值、求最大值和求最小值。它们的参数均可以为一个特定的列名,列名前可加distinct短语以去掉重复。另外count(

11、*)用于统计记录数。 例20:求仓库WH1每月支付的工资总数。select sum(工资) from 职工 where 仓库号=“WH1” 例21:求仓库WH1中职工的最高工资和最低工资。select max(工资),min(工资) from 职工 where 仓库号=“WH1”,例8:查询工资在12001500之间的职工及其所属仓库。 Select 职工号,仓库号 from 职工 where 工资 between 1200 and 1500 (闭区间) 例22:查询地处太原、北京、上海的所有供应商。select 供应商号,供应商名 from 供应商 where 地址 in (“太原”,“北京

12、”,“上海”) 例23:查询不在北京、上海的所有仓库的仓库号及面积。select 仓库号,面积 from 仓库 where 城市 not in (“北京”,“上海”) 例24: 查询城市名以”北”开头的城市 select 仓库号,城市,面积 from 仓库表 where 城市 like(“北*“),例25: 闭区间上查询 select 仓库号,城市,面积 from 仓库表 where 面积 between 390 and 500 例26 查询面积在300平米以上,500平米以下(不包括500平米)的仓库信息。select * from 仓库 where 面积=300 and 面积500 10.

13、8.2 对查询结果排序可在查询语句之后加order by短语以对查询结果排序显示。格式为:order by 表达式1 asc|desc,表达式2 asc|desc(默认为asc) 例27 : 按仓库号降序,工资升序输出全部职工信息。select * from 职工 order by 仓库号 desc,工资,.对查询结果分组可在查询语句之后加 group by 列1,列2,。 例28:求每个仓库的职工的平均工资。select 仓库号,avg(工资) from 职工 group by 仓库号例29:求至少有两个职工的每个仓库的总工资select 仓库号,count(*),sum(工资) from

14、职工 group by 仓库号 having count(*)=2having短语总是跟在group by 子句之后,不可单独使用。Where子句和having短语的区别在于作用对象不同。Where子句作用于基本表或视图,从中选择满足条件的元组;而having短语作用于组,从中选择满足条件的组。,联接查询在查询的数据涉及到多个表时,必须用联接条件将这些表联接起来。 例30:找出工资多于1230元的职工号和他们所在的城市。分析:职工号来源于职工表,城市来源于仓库表,所以应在FROM后列出涉及到的表,在WHERE后加上联接条件。select 职工号,城市 from 职工,仓库;where 职工.仓

15、库号=仓库.仓库号 and 工资1230外部关键字 联接条件 主关键字,例31:职工号来源于职工表,城市来源于仓库表,二表通过同名字段仓库号联接。 select 职工号,城市,面积 from 职工表,仓库表 where 职工表.仓库号=仓库表.仓库号 and 面积400例32 select 职工号,城市,工资 from 职工表,仓库表 where 职工表.仓库号=仓库表.仓库号 and 工资1230,嵌套查询一个select-from-where称为一个查询块,将一个查询块嵌套在另一个查询块的where(或having)子句条件中的查询称为嵌套查询。 例33: 哪些城市至少有一个仓库的职工的工资为1250元?select 城市 from 仓库 where 仓库号 in (select 仓库号 from 职工 where 工资=1250)例34:找出和职工E4薪水相同的所有职工 SELECT 职工表.职工号 FROM 职工表 WHERE 职工表.工资=(select 工资 from 职工表 where 职工号=“E4“);,

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报