当前位置首页 > 计算机 > 数据库/结构与算法
搜柄,搜必应! 快速导航 | 使用教程

vfp关系数据库标准语言SQL课件

文档格式:PPT| 45 页|大小 2.64MB|2024-12-12 发布|举报 | 版权申诉
第1页
第2页
第3页
下载文档到电脑,查找使用更方便 还剩页未读,继续阅读>>
1 / 45
此文档下载收益归作者所有 下载文档
  • 版权提示
  • 文本预览
  • 常见问题
  • Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,Click to edit Master title style,查看数据库,仓库管理,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,Click to edit Master title style,*,第四章,关系数据库标准语言,SQL,Visual FoxPro,数据库程序设计,苏州科技学院电子与信息工程学院,USTS,计算机,基础教学部,目 录,4.1,SQL,概述,1,4.2,查询功能,2,4.3,操作功能,3,4.4,定义功能,4,4.1 SQL,概述,ANSI,提出,SQL,1986,年,1987,年,ISO,采纳,SQL,1989,年,ISO,提出,SQL89,1992,年,ISO,提出,SQL92,SQL,功能,命令动词,数据查询,SELECT,数据定义,CREATE,、,DROP,、,ALTER,数据操纵,INSERT,、,UPDATE,、,DELETE,数据控制,GRANT,、,REVOKE,目 录,4.2.1,简单查询,4.2.2,简单的连接查询,4.2.3,嵌套查询,4.2.4,几个特殊的运算符,4.2.5,排序,4.2.6,简单的计算查询,4.2.7,分组与计算查询,4.2.8,利用空值查询,4.2.9,别名与自连接查询,内外层相关嵌套查询,使用量词和谓词的查询,超连接查询,集合的并运算,中,SELECT,的几个特殊选项,4.1,SQL,概述,1,4.2,查询功能,2,4.3,操作功能,3,4.4,定义功能,4,SELECT SQL,SELECT ALL|DISTINCT TOP,nExpr,PERCENT,Alias,.,Select_Item,AS,Column_Name,Alias,.,Select_Item,AS,Column_Name,.,FROM FORCE,DatabaseName,!,Table,AS,Local_Alias,INNER,|LEFT OUTER|RIGHT OUTER|FULL OUTER,JOIN,DatabaseName,!,Table,AS,Local_Alias,ON,JoinCondition,INTO,Destination,|TO FILE,FileName,ADDITIVE,|TO PRINTER PROMPT|TO SCREEN,PREFERENCE,PreferenceName,NOCONSOLE,PLAIN,NOWAIT,WHERE,JoinCondition,AND,JoinCondition,.AND|OR,FilterCondition,AND|OR,FilterCondition,.,GROUP BY,GroupColumn,GroupColumn,.,HAVING,FilterCondition,UNION ALL,SELECT,命令,ORDER BY,Order_Item,ASC|DESC,Order_Item,ASC|DESC.,问题,需要访问的数据涉及到多张表,查询学生名、课程名、成绩,xs.xm kc.kcm cj.cj,需要访问的只是部分数据,工商管理系的学生,xh,xm,需要访问计算或统计数据,每个学生的平均分,xs.xm,平均,(cj.cj),分组,xs.xm,每门课程,80,分以上的人数,kc.kcm,个数,(),条件,cj.cj=80,分组,cj.kcdh,解决办法,查询和视图!,共同点,从表中检索或统计所需的数据,区别,查询是只读的;视图可以被修改,并且可以将更新结果送回源表,查询以独立的文件存储;视图不以独立文件存储,系统将其名称及定义存储在数据库中,SELECT SQL,定义,数据源,指定数据源表,FROM,子句,确定源表间的联接,JOINON,子句,定义,结果,筛选源表记录,WHERE,子句,指定输出字段,字段、函数和表达式的列表或*,指定输出类型,INTO,子句和,TO,子句,定义记录的分组,GROUP BY,子句,指定结果顺序,ORDER BY,子句,筛选结果记录,HAVING,子句,指定有无重复记录,ALL/DISTINCT,指定结果的范围,TOP nExprPERCENT,简单查询,例,4.1,:从职工表中检索所有工资值。

    例,4.2,:检索仓库关系中的所有元组例,4.3,:检索工资多于,1230,的职工号例,4.4,:检索哪些仓库有工资多于,1210,的职工例,4.5,:给出在仓库“,WH1”,或“,WH2”,工作并且工资少于,1250,员的职工号简单连接查询,例,4.7,:找出工作在面积大于,400,的仓库的职工号以及这些职工工作的城市Select,职工号,城市,from,仓库,职工,;where(,面积,400)and(,职工,.,仓库号,=,仓库,.,仓库号,),Select,职工号,城市,from,仓库,inner join,职工,;On(,职工,.,仓库号,=,仓库,.,仓库号,)where,面积,400,嵌套查询,例,4.9,:查询所有职工的工资都多于,1210,元的仓库的信息没有一个职工的工资少于或等于,1210,元的仓库信息Select*from,仓库,where,仓库号,not in;,(select,仓库号,from,职工,where,工资,=1210);,and,仓库号,in(select,仓库号,from,职工,),几个特殊运算符,例,4.11:,检索出工资在,1220,元到,1240,元范围内的职工信息。

    Select*from,职工,;,where,工资,between,1220,and,1240,例,4.12:,从供应商关系中检索出全部公司的信息(不要工厂或其他供应商的信息)Select*from,供应商,;,where,供应商名,like,“%,公司”,4.2.5,排序,例,4.15,先按仓库号排序,再按工资排序输出全部职工信息Select*from,职工,order by,仓库号,工资,分组计算查询,Count(),、,sum(),、,avg(),、,max(),、,min(),例:查询,cj,表中每个学生的考试门数、最高分、最低分、平均分及总分,结果按学号升序排序Select,cj.xh,count,(*)as,考试门数,;,max,(,cj.cj)as,最高分,min,(cj.cj)as,最低分,;,avg,(cj.cj)as,平均分,sum,(cj.cj)as,总分,;,from,cj;,group by,cj.xh;,order by,1,利用空值查询,例,4.23,:找出尚未确定供应商的订购单Select*from,订购单,;,where,供应商号,is null,别名与自连接查询,在,FROM,子句中使用:,雇员关系:雇员(雇员号,雇员姓名,经理),雇员号,雇员姓名,经理,E3,赵勇,E4,钱潮,E3,E6,孙洁,E3,E8,李渌,E6,Select s.,雇员姓名,“,领导,”,e.,雇员姓名,;,from,雇员,s,雇员,e,where,s.,雇员号,=e.,经理,内外层互相关嵌套查询,例:列出每个职工经手的具有最高金额的订购单信息。

    Select,out.,职工号,out.,供应商号,out.,订购单号,out.,订购日期,out.,总金额,;,from,订购单,out where,总金额,=;,(select max(,总金额,)from,订购单,inner1;,where,out.,职工号,=inner1.,职工号,),使用量词和谓词查询,ANY|ALL|SOME(,子查询,),ANY,与,SOME,是同义词,在进行比较运算时只要子查询中有一行能使结果为真,则结果为真ALL,要求子查询中的所有行都能使结果为真时,结果才为真NOT EXISTS(,子查询,),not Exists,是谓词,用来检查在子查询中是否有结果返回(即存在元组或不存在元组),例:查询那些仓库中还没有职工的仓库信息SELECT*FROM,仓库,WHERE NOT EXISTS;,(SELECT*FROM,职工,where,仓库号,=,仓库,.,仓库号,),select*from,仓库,where,仓库号,not in;,(select,仓库号,from,职工,),例:检索有职工的工资大于或等于,WH1,仓库中任何一名职工的工资的仓库号Select distinct,仓库号,from,职工,;,where,工资,=any;,(select,工资,from,职工,where,仓库号,=“WH1”),超连接查询,SELECT,from,table,inner|left|right|full join,table,On,joincondition,Where,例:普通连接,Select,仓库,.,仓库号,城市,面积,职工号,工资,;,from,仓库,inner join,职工,on,仓库,.,仓库号,=,职工,.,仓库号,例:左连接,Select,仓库,.,仓库号,城市,面积,职工号,工资,;,from,仓库,left join,职工,on,仓库,.,仓库号,=,职工,.,仓库号,例:右连接,Select,仓库,.,仓库号,城市,面积,职工号,工资,;,from,仓库,right join,职工,on,仓库,.,仓库号,=,职工,.,仓库号,例:全连接,Select,仓库,.,仓库号,城市,面积,职工号,工资,;,from,仓库,full join,职工,on,仓库,.,仓库号,=,职工,.,仓库号,集合的并运算,UNION,:两个查询结果具有相同结构的关系并在一起。

    查询全校教师与学生的姓名和类别信息Select js.xm as,姓名,教师,as,类别,from js;,Union,;,Select xs.xm as,姓名,学生,as,类别,from xs,4.2.14Visual FoxPro SQL SELECT,的几个特殊选项,显示部分数据:,1.,显示工资最高的,3,位职工信息,Select*top 3 from,职工,order by,工资,desc,2.,显示工资最低的那,30%,职工的信息,Select*top 30 percent from,职工,order by,工资,查询结果的去处:,INTO ARRAY,ArrayName,INTO CURSOR,CursorName,INTO TABLE|DBF,TableName,TO FILE,FileName,ADDITIVE,TO PRINTER PROMPT,目 录,4.3.1,插入数据,4.3.2,更新数据,4.3.3,删除,4.1,SQL,概述,1,4.2,查询功能,2,4.3,操作功能,3,4.4,定义功能,4,插入数据,INSERT INTO,dbf_name,(,fname1,fname2,),VALUES,(,eExpression1,eExpression2,),Insert into,订购单,values(E7,S4,OR01,2001-05-25,5000),更新数据,UPDATE,TableName,SET,Column_Name1=eExpression1,Column_Name2=eExpression2,.,WHERE,Condition,为,js,表添加一个年龄字段,并计算所有男教师的年龄。

    点击阅读更多内容
    卖家[上传人]:陈十三
    资质:实名认证
    相关文档
    正为您匹配相似的精品文档