




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第5章关系数据标准语言SQL本章学习要点
掌握SQL语言的特点及功能,掌握SQL语言进行数据定义的方法与步骤,掌握使用SQL语言进行数据更新的方法,掌握使用SQL语言进行数据查询的方法。本章目录SQL语言特点⒈SQL是一种一体化的语言。集定义、查询、操纵控制于一身。⒉SQL是一种高度非过程化的语言⒊SQL语言非常简洁,只有几个语句。⒋SQL可以直接以命令方式交互使用。5.1.1SQL语句:9个语句SQL功能语句动词数据定义CREATE、DROP、ALTER数据操作INSERT、UPDATE、DELETE数据控制GRANT、REVOKE数据查询SELECT5.1.2查询中常用的运算符类型运算符算术运算符+-*/^\mod关系运算符<<=>>=<>!=#逻辑运算符Notandor字符运算符&检查属性值是否为空Isnull,isnotnull检查属性值是否属于一组值之一In,notin检查属性值是否属于某个范围[not]Between…and…字符串匹配Like,notlike5.1.3查询中常用的计算函数⒈count(*):计算记录个数。⒉sum(字段名):计算字段值的和。⒊avg(字段名):计算字段值的平均值。⒋max(字段名):计算字段的最大值。⒌min(字段名):计算字段的最小值勤。5.2SQL的定义功能基本格式:CREATETABLE/DBF表名(字段名类型(宽度),字段名…..)除此之外的参数:主索引:PRIMARYKEY定义域完整性:CHECK出错信息提示:ERROR5.2SQL的定义功能默认值:DEFAULT表之间的联系:FOREIGNKEY和REFERENCES长表名:NAME长表名建立自由表:FREE字段是否允许为空值:NULL建立候选索引:UNIQUE从数组建立表:FROMARRAY数组名5.2SQL的定义功能例5.1:建立一个名为学生2的自由表。Ceatetable学生2free;(学号c(7),姓名c(8),性别c(2),出生日期d,专业c(10),入学成绩n(5,1),贷款否l,照片g,简历m)例5.2:在教学管理数据库中建立学生1表,主索引学号,性别默认值为男。Ceatetable学生1;(学号c(7)primarykey,姓名c(8),性别c(2)default“男”,出生日期d,专业c(10),入学成绩n(5,1),贷款否l,照片g,简历m)2:在教学管理数据库中建立学生1表,主索引学号,性别默认值为男。左联接(LEFTJOIN)字段是否允许为空值:NULL注意:查询结果用浏览表的方法查看。ALTERTABLE表名renamecolumn旧字段名to新字段名Set字段名=表达式,字段名=表达式….4利用特殊运算符查询[REFERENCES表2TAG表1]6将学生1表的电话字段名改为家庭电话Where短语指定了查询条件,查询条件可以是各种简单或复杂表达式,如果存在多于一个条件,则它们中间用AND或OR连接.保存的是所有表的参数、索引、关联等信息。⑷列中如果用了库函数,在没有分组(groupby)的情况下,对整个表进行统计.注意:ADDITIVE是添加的意思,查询结果即送给文本文件又在屏幕上显示。4利用特殊运算符查询Set字段名=表达式,字段名=表达式….5.2SQL的定义功能ALTERTABLE表名ADD/ALTER/COLUMN字段名类型(宽度,小数位)[NULL/NOTNULL][CHECK…ERROR….DEFAULT…][PRIMARYKEY/UNIQUE][REFERENCES表2TAG表1]5.2SQL的定义功能Altertable学生1alter专业c(12)例5.4将学生1表的性别字段的默认值定义为男Altertable学生1alter性别c(2)default“男”例5.5为学生1表增加一个字符类型的电话c(13)Altertable学生1add电话c(13)5.2SQL的定义功能ALTERTABLE表名renamecolumn旧字段名to新字段名例5.6将学生1表的电话字段名改为家庭电话Altertable学生1rename电话to家庭电话5.2SQL的定义功能ALTERTABLE表名DROP[column]字段名例5.7将学生1表的家庭电话和简历两个字段Altertable学生1drop家庭电话drop简历5.2SQL的定义功能CREATEVIEW视图名(列名1,列名2…..)asSELECT查询语句⒈定义单个表的视图Createview学生_wasselect学号,姓名,性别from学生5.2SQL的定义功能⒊视图中的虚字段例:定义一个视图,查询学生人数、平均入学成绩、最高入学成绩、最低入学成绩。Createview学生人数_wasselectcount(*)as学生人数,avg(入学成绩)as平均入学成绩,max(入学成绩)as最高入学成绩,min(入学成绩)as最低入学成绩from学生5.2SQL的定义功能⒋删除视图Dropview视图名例:dropview学生人数_w5.3SQL的操作功能SQL操作功能主要是对表中数据进行的操作,包括记录的插入、更新和删除。5.3.1INSERT插入语句Insertinto表名[(列名1,列名2….)]values(值1,值2……)Insertinto表名fromarray数组名说明:给表中所有字段赋值时,可省略列名1,列名2…Fromarray数组名:从指定的数组中插入记录值5.3SQL的操作功能5.3.1INSERT插入语句例5.8:向学生表中插入新记录。Insertinto学生(学号,姓名,性别,出生日期,专业,入学成绩)values(“9906021”,”卫民”,”男”,{^1982/11/21},”中文”,560)5.3SQL的操作功能5.3.1INSERT插入语句例5.9:把学生表中的一条记录插入到学生1表中。Use学生Scattertoa1Insertinto学生1fromarraya1Select学生1browse5.3SQL的操作功能5.3.3UPDATE更新语句Update表名;Set字段名=表达式,字段名=表达式….;Where条件例5.11:将学生表中计算机专业修改为计算机应用。Update学生set专业=“计算机应用”;where专业=“计算机”注意:不带条件的更新是更新全部记录。5.4SQL的查询功能查询语句select----from----where基本格式SELECT列名表(逗号隔开)FROM基本表或视图序列[WHERE条件表达式](行条件子句)[GROUPBY列名序列](分组子句)[HAVING组条件表达式](组条件子句)[ORDERBY列名[ASC|DESC]..](排序子句)5.4.1单表查询Select[all/distinct<目标列>];From<表名(或视图名)>说明:⑴distinct查询结果中去掉重复记录⑵给新列赋新的名列名as新列名⑶查询所有记录,目标列用*号⑷列中如果用了库函数,在没有分组(groupby)的情况下,对整个表进行统计.5.4.1单表查询:从学生表中查询学号,姓名,性别3列.:从学生表中查询所有字段:查询学生的专业:查询学生的专业,取消重复行.例5.16:利用计算函数查询学生的人数,平均入学成绩,最高入学成绩,最低入学成绩.5.4.1单表查询Select[all/distinct<目标列>];From<表名(或视图名)>Where查询条件表达式说明:Where短语指定了查询条件,查询条件可以是各种简单或复杂表达式,如果存在多于一个条件,则它们中间用AND或OR连接.5.4.1单表查询例17:查询新闻专业的学生,显示学号,姓名,性别,专业.例18:从学生表中查询学号,姓名,性别,专业及入学成绩在450分至600分之间的记录.BETWEEN…..AND….短语例19:使用IN运算符号查询专业为外贸或计算机的学生姓名.5.4.2排序查询短语格式Orderby字段表达式asc/desc,字段表达式asc/desc例20:查询学生的学号,姓名,专业,入学成绩,首先按专业从小到大排序,如果专业相同,则再按入学成绩从大到小排序.5.4.3分组与计算查询短语格式GROUPBY列名1,列名2HAVING分组条件:从成绩表中查询选修了3门以上(包括3门)课程学生的学号,课程数和期末平均成绩.5.4.4利用特殊运算符查询Isnull或isnotnull在专业表中找出尚未确定负责人的专业.在专业表中找出已确定负责人的专业.5.4.4利用特殊运算符查询Between….and….或notbetween…and…查询基本工资在1250至1550之间的教师信息.查询基本工资不在1250至1550之间的教师信息.5.4.4利用特殊运算符查询字符匹配:LIKE,NOTLIKE通配符%多个,_一个字符从教员表中查找教授职称的教师信息.从教员表中查找无教授职称的教师信息.5.4.5多表联接查询查询结果来自多个表.多表联接主要有以下几种形式:内联接(INNERJOIN)左联接(LEFTJOIN)右联接(RIGHTJOIN)全联接(FULLJOIN)5.4.5多表联接查询例28:查询计算机及外贸专业的学生的学号,姓名,课程代号和期末成绩.例29:交上例改为在WHERE子句中指定联接类型和条件.例30:查询选修了3门以上课程的学生的学号,姓名,专业及课程数5.4.6嵌套查询在SQL中,一个select….from….where称为一个查询块,将一个查询块嵌在另一个select语句的where中或having中称为嵌套查询.查询选修了课程代号是40711的课程的学生的学号,姓名,性别和专业。5.4.7SQLSELECT的几个特殊选项TOP<数值表达式>[PERCENT]:显示入学成绩最高的前5名学生。:显示入学成绩最低的前20%的学生信息。注意:TOP一定要和ORDERBY同时使用才有效。5.4.7SQLSELECT的几个特殊选项INTODBF/TABLE表名:查询入学成绩最高的前5名学生,并将查询结果存放在highs5.dbf表中。注意:查询结果用浏览表的方法查看。5.4.7SQLSELECT的几个特殊选项TOFILE<文本文件名>[ADDITIVE]:查询入学成绩最高的前5名学生,并将查询结果存放在thighs5.txt文件中。注意:ADDITIVE是添加的意思,查询结果即送给文本文件又在屏幕上显示。5.4.7SQLSELECT的几个特殊选项INTOARRAY<数组名>:查询入学成绩最高的前5名学生,并将查询结果存放在ARR数组中。注意:查询结果是二维数组。5.4.7SQLSELECT的几个特殊选项INTOCURSOR<临时文件名>:将查询的课程信息存放到CUR1临时.dbf文件中。注意:临时文件是只读的,只在当时建立时有效,一旦关闭,该文件自动删除。5.4.7SQLSELECT的几个特殊选项TOPRINTER[PROMPT]注意:PROMPT打开打印机设置对话框。用查询设计器查询数据的基本步骤打开查询设计器—进行查询设置,即设置被查询的表、联接条件、字段等输出要求和查询结果的去向—执行查询—保存查询设置。打开查询设计器窗口MODIFYQUERY<文件名>查看由查询生成的SQL命令快捷菜单的“查看SQL命令”查询结果的图形处理查询设计器窗口5.6数据库与视图一、数据库基本概念多个有联系的表放在一个数据库中管理。二、用数据库设计器设计数据库数据库设计器工具栏、数据库菜单、方便管理库中表。用菜单或用命令创建,扩展名为.dbc。创建命令:CREATEDATABASE库名库建好后,向库中新建表或添加表。5.6数据库与视图⒊数据库的关闭与删除
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 地下车库沥青施工的安全施工措施
- 针对四年级下册的语文复习计划
- 对一朵花微笑550字(14篇)
- 2025年小学艺术社团建设计划
- 科技公司客户接待流程及体验优化
- 三年级下册语文多元化教学计划
- 2025年圆筒式真空干燥器项目市场调查研究报告
- 建筑行业可持续发展与废混凝土利用计划
- 初中学困生的课后辅导措施探讨
- 2025年度食品安全生产资金投入计划
- DL-T 1071-2023 电力大件运输规范
- 基于MATLAB的通信系统的设计与仿真毕业论文
- 2024年湖南高考物理真题试题(原卷版+含解析)
- 因为喝酒上班迟到检查范文
- 广东省中山市2023-2024学年八年级下学期期末考试数学试卷
- 跨文化商务交际智慧树知到期末考试答案章节答案2024年西安工业大学
- DZ/T 0462.1-2023 矿产资源“三率”指标要求 第1部分:煤(正式版)
- 河南省成人高等教育毕业生毕业资格审查表
- 报修申请表(完整版)
- 师带徒培养方案范文
- 山东莱阳核电项目一期工程水土保持方案
评论
0/150
提交评论