计算机二级SQL语言

上传人:平*** 文档编号:32412738 上传时间:2018-02-11 格式:PPT 页数:44 大小:1.38MB
返回 下载 相关 举报
计算机二级SQL语言_第1页
第1页 / 共44页
计算机二级SQL语言_第2页
第2页 / 共44页
计算机二级SQL语言_第3页
第3页 / 共44页
计算机二级SQL语言_第4页
第4页 / 共44页
计算机二级SQL语言_第5页
第5页 / 共44页
点击查看更多>>
资源描述

《计算机二级SQL语言》由会员分享,可在线阅读,更多相关《计算机二级SQL语言(44页珍藏版)》请在金锄头文库上搜索。

1、1,SQL概述,SQL是结构化查询语言Structured Query Language的缩写。它包含数据查询、数据定义、数据操纵和数据控制功能。,VFP在SQL方面支持数据查询、数据定义、数据操纵功能。,2,SQL语言的特点,SQL是一种一体化的语言 SQL语言是一种高度非过程化的语言 SQL语言非常简洁 SQL一种语言两种使用方式:可以直接以命令方式交互,也可以程序方式使用。,3,SQL概述,SQL九大命令,4,SQL数据查询,SELECT ALL | DISTINCTTOP(表达式)PERCENT字段列表FROM数据库!INNER|LEFT|OUTER|RIGHTOUTER|FULLOU

2、TERJOIN 数据库! 表名 ON WHERE GROUP BY 分组依据HAVING UNIONALL 查询命令ORDER BY ,5,数据查询,6,数据查询,7,格式1:SELECT 字段1,字段2,字段n FROM 表名格式2:SELECT 字段1,字段2,字段n FROM 表名 WHERE ,ALL | DISTINCT,DISTINCT短语的作用是去掉重复值,8,SELECT 工资 FROM 员工表SELECT DISTINCT 工资 FROM 员工表SELECT * FROM 员工表SELECT * FROM 员工表; WHERE 性别=“男” AND 工资 4000,分号代表续

3、行符。,*代表查询表中所有字段。,9,Select 员工号,姓名,部门名称;From 员工表,部门表;Where (工资3500) AND (员工表.部门号=部门表.部门号),连接查询是一种基于多个关系(表)的查询,所以进行的查询操作至少有两个表且必须有连接条件。,查询出工资多于3500元的员工号、姓名和部门名称,10,嵌套查询要求结果出自一个关系(表),但关系的条件却涉及多个关系。可用IN或NOT IN来判断在外层查询条件中是否包含内层查询的结果。,查询员工表中工资大于3500元的部门表中的信息。,Select * From 员工表 Where 部门号 ;IN (Select 部门号 Fro

4、m 员工表 Where 工资3500),查询的结果为(”101”,”102”,”103”),11,Select * From 员工表;Where 工资 BETWEEN 2500 AND 3000,BETWEENAND:检索出某一区间范围的记录,包括两端的边界值。,检索出工资在2500元到3000元范围的员工表信息。,Select * From 员工表;Where 工资= 2500 AND 工资2,HAVING必须与GROUP BY一起使用,不能单独使用,20,空值查询用函数IS NULL或IS NOT NULL,找出尚未确定部门的员工信息,Select * From 员工表 Where 部门号

5、 IS NULL,Select * From 员工表 Where 部门号 IS NOT NULL,Select 姓名,职务名称 From 员工表,职务表; Where 员工表.职务号=职务表.职务号,21,涉及到多个表时,当访问多个表中同名的字段时,需要用“表名.属性名”来指定。例如:,SQL允许在From短语后为关系名定义别名,格式为:关系名 别名,Select 姓名,职务名称 From 员工表 s,职务表 p; Where s.职务号=p.职务号,22,自连接定义:自连接可以将自身表的一个镜像当作另一个表来对待,从而能够得到一些特殊的数据。自连接别名是必需的。,Select e.雇员姓名,

6、“带领,m.雇员姓名;From 雇员 e,雇员 m;Where e.雇员号=m.经理,根据雇员关系,查询出雇员姓名及其经理姓名,23,用的量词和谓词有:IN(NOT IN),ANY,ALL,SOME、EXISTS、NOT EXISTS,其具体格式如下:,ANY|SOME|ALL(子查询),NOTEXISTS(子查询),ANY和SOME是同一词,在进行比较运算时只要子查询中有一行能使结果为真,则结果为真,ALL要求子查询中所有行都能使结果为真,则结果为真,EXISTS是用来检查在子查询中是否有结果返回,24,查询出职工的工资大于或等于101部门中任何一名职工的工资的部门号。,Select Dis

7、tinct 部门号 From 员工表;Where 工资=ANY;(Select 工资 From 员工表 where 部门号=“101”),Select Distinct 部门号 From 员工表 Where 工资=;(Select MIN(工资) From 员工表 Where 部门号=“101”),25,超连接查询定义:首先保证一个表满足条件的元组都在结果表中,然后将满足连接条件的元组与另一个表的元组进行连接,不满连接条件的则将来自另一个表的属性值置为空值。,26,格式:Select 字段1,字段2, From 表名 INNER|LEFT|RIGHT|FULL JOIN 表名 ON 连接条件

8、Where ,INNER JOIN(内连接):等同于JOIN,只有满足条件的记录才出现在查询结果中。,LEFT JOIN(左连接):除了满足条件的记录才出现在查询结果中外,第一个表中不满足条件的记录也出现在查询结果中。,RIGHT JOIN(右连接):除了满足条件的记录才出现在查询结果中外,第二个表中不满足条件的记录也出现在查询结果中。,FULL JOIN(全连接):除了满足条件的记录才出现在查询结果中外,两个表中不满足条件的记录也出现在查询结果中。,27,格式:Select 字段1,字段2, From 表名 INNER|LEFT|RIGHT|FULL JOIN 表名 ON 连接条件 Wher

9、e ,INNER JOIN(内连接):等同于JOIN,只有满足条件的记录才出现在查询结果中。,LEFT JOIN(左连接):除了满足条件的记录才出现在查询结果中外,第一个表中不满足条件的记录也出现在查询结果中。,RIGHT JOIN(右连接):除了满足条件的记录才出现在查询结果中外,第二个表中不满足条件的记录也出现在查询结果中。,FULL JOIN(全连接):除了满足条件的记录才出现在查询结果中外,两个表中不满足条件的记录也出现在查询结果中。,28,员工表和部门表连接。,员工表和部门表右连接。,员工表和部门表左连接。,员工表和部门表全连接。,Select 员工表.部门号,姓名,工资 From

10、员工表 ;INNER JOIN 部门表 ON 员工表.部门号=部门表.部门号,Select 员工表.部门号,姓名,工资 From 员工表 ;RIGHT JOIN 部门表 ON 员工表.部门号=部门表.部门号,Select 员工表.部门号,姓名,工资 From 员工表 ;LEFT JOIN 部门表 ON 员工表.部门号=部门表.部门号,Select 员工表.部门号,姓名,工资 From 员工表 ;FULL JOIN 部门表 ON 员工表.部门号=部门表.部门号,29,JOIN连接多个表时,JOIN的顺序和ON的顺序正好相反,Select 仓库.仓库号,供应商名;From 供应商 JOIN 订购单

11、 JOIN 职工;ON 订购单.职工号=职工.部门号;ON 供应商.供应商号=订购单.供应商号,30,31,显示工资最高的30%员工的信息。,显示年龄最大的3位员工的信息。,将查询到的员工信息放在数组A中。,Select * TOP 30 PERCENT From 员工表 ;ORDER BY 工资 DESC,Select * TOP 3 From 员工表 ;ORDER BY 年龄,Select * From 员工表 INTO ARRAY A,将查询到的员工信息放在临时.dbf文件A中。,Select * From 员工表 INTO CURSOR A,将查询到的员工信息放在表A中。,Select * From 员工表 INTO DBF A,32,数据操作功能,SQL的数据操作功能是指对数据库中的插入、更新和删除。,INSERT,DELETE,UPDATE,

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

当前位置:首页 > 高等教育 > 大学课件

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