VF二级培训讲义SQL查询、查询设计器、SQL数据表的操作、视图设计器
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
VF二级培训讲义-(SQL查询、查询设计器、SQL数据表的操作、视图设计器)
————————————————————————————————作者:————————————————————————————————日期:
第三部分关系数据库标准语言S Q L
一、SQL概述
1.1 SQL的概念:SQL(Structured Query Language)是结构化查询语言的简称,它引领着关系数据库的发展方
向,是未来关系数据库发展的标准。
1.2 SQL的特点:
◆一体化
◆高度非过程化
◆非常简洁
◆直接以命令方式交互使用
1.3 SQL的主要命令:
◆数据查询:SELECT
◆数据定义:CREATE、DROP、ALTER
◆数据操纵:INSERT、UPDATE、DELETE
二、使用命令建立SQL查询
2.1查询的概念:查询是从指定的表或视图中提取满足条件的记录,然后按照想得到的输出类型定向输出查询
结果。
2.2 SQL查询语句格式:
◆SELECT :要查询的数据(字段)
◆FROM :数据来源(要查询的数据来自哪个或哪些表)
◆WHERE :查询需要满足的条件
◆GROUP BY :对查询的数据进行分组
◆ORDER BY :对查询结果进行排序
2.3 SQL简单查询:
1.在当前数据库当前表中查询某一数据
基本格式:SELECT Select_Item FROM Table
其中:Select_Item:字段名列表Table:数据表名称
例题2.1:从职工关系中检索所有工资值。
实现语句:SELECT 工资 FROM 职工
2.在指定数据库指定表中查询某一数据
基本格式:SELECT [Alias.]Select_Item FROM [DatabaseName!]Table
例题2.2:从订货管理数据库中的职工数据表中检索所有工资值。
实现语句:SELECT 职工.工资 FROM 订货管理数据库!职工
3.在当前数据库当前表中查询所有数据
基本格式:SELECT * FROM Table
例题2.3:从当前数据库中当前数据表中检索所有数据。
实现语句:SELECT * FROM 职工
4.在当前数据库当前表中查询所有数据(不允许内容重复)
基本格式:SELECT[ALL | DISTINCT]Select_Item FROM Table
例题2.4:从当前数据库中当前数据表中检索所有不重复
...的工资数据。
实现语句:SELECT DISTINCT工资 FROM 职工
5.在当前数据库当前表中进行条件查询
基本格式:SELECT Select_Item FROM Table WHERE JoinCondition
例题2.5:在当前数据库当前表中,查询工资大于1210元职工的仓库号
Select 仓库号 from 职工 where 工资>1210
实现语句:SELECT 仓库号 FROM 职工 WHERE 工资>1210
例题2.6:查询在仓库“WH1”或“WH2”工作,并且工资少于1250元的职工工号
实现语句:SELECT 职工号 FROM 职工 WHERE 工资<1250 AND (仓库号=”WH1”OR仓库号=”WH2”)
完整格式:
SELECT[ALL|DISTINCT][Alias.]Select_Item |* FROM[DatabaseName!]Table [WHERE JoinCondition]
2.4 SQL联接查询:
联接查询的含义:联接查询是一种基于多个关系的查询,即将多个数据表中数据构成一个查询集合,并在其中查询出符合要求的记录。
例题2.7:找出工资多于1230元的职工号和他们所在的城市。
实现语句:SELECT 职工号,城市 FROM 职工,仓库 WHERE 工资>1230 AND (职工.仓库号=仓库.仓库号) 特别注意:
◆职工.仓库号=仓库.仓库号是连接条件
◆如果在FROM之后有两个关系,则这两个关系之间肯定有一种联系,否则无法构成检索表达式
例题2.8:找出工作在面积大于400的仓库的职工号以及这些职工工作所在的城市。
实现语句:SELECT 职工号,城市 FROM 职工,仓库 WHERE 面积>400 AND (职工.仓库号=仓库.仓库号)
2.5 SQL嵌套查询:
例题2.9:哪些城市至少有一个仓库的职工工资为1250元?
实现语句:SELECT 城市 FROM 仓库 WHERE 仓库号 in (SELECT 仓库号 FROM 职工 WHERE 工资=1250)
例题2.10:查询所有职工的工资都多于
...1210元的仓库信息。
实现语句:SELECT * FROM 仓库 WHERE 仓库号 NOT IN (SELECT 仓库号 FROM 职工 WHERE 工资<=1210)
例题2.11:找出和职工E4挣同样工资的所有职工。
实现语句:SELECT 职工号 FROM 职工 WHERE 工资=(SELECT 工资 FROM 职工 WHERE 职工号=”E4”)
2.6 SQL几个特殊运算符:
◆BETWEEN…AND:…和…之间
◆LIKE:字符串匹配运算符
例题2.12:检索出工资在1220元到1240元范围内的职工信息。
实现语句:SELECT * FROM 职工 WHERE 工资 BETWEEN 1220 AND 1240
例题2.13:从供应商关系中检索出全部公司的信息,不要工厂或其他供应商的信息。
实现语句:SELECT * FROM 供应商 WHERE 供应商名 LIKE “%公司”
通配符:
◆% :表示任意多个字符(含0个)
◆_ :表示一个字符
2.7 SQL排序:
基本格式:ORDER BY Order_Iten[ASC|DESC][,Order_Iten[ASC|DESC]…]
例题2.14:按职工的工资值升序检索出全部职工信息。