文档详情

第四章 视查询-SQL语句.ppt

发布:2017-01-22约1.55万字共85页下载文档
文本预览下载声明
第四章 查询与视图 ——SQL语句 1、SQL简介 Structured Query Language(结构化查询语言)的缩写。 是一种国际标准,大部分DBMS产品都支持SQL,SQL已成为操作数据库的标准语言。 有“方言”,支持程度不同。 Visual Foxpro6.0支持SQL,但支持程度与其它DBMS产品有区别,也与标准SQL有差异。 1.1 SQL的特点 非过程化 一体化 两种使用方式,统一的语法结构 简洁 1.2 SQL的功能 数据定义(DDL) Create、Drop、Alter 数据操纵(DML) 数据修改:Insert、Update、Delete 数据查询:Select 数据控制(DCL) Grant、Revoke 2、SQL的数据查询 数据查询是数据库应用的核心功能 一、基本结构 Select A1, A2, ..., An From r1, r2, ..., rm Where P 二、说明 SELECT:说明要查询的列(字段)数据; FROM:要查询的字段来自哪个或哪些表; WHERE:查询条件,即选择记录的条件。 2.1 单表查询 Select子句(选择表中若干列) Where子句(选择表中若干行) Order By子句(对查询结果排序) 聚集函数(求和、求平均等) 2.1.1 选择列:投影运算 语法结构 select 列名1,列名2,…… from 表名 例s1:查看rsda.dbf数据表中的姓名和职称 select 姓名,职称 from rsda; 2.1.1选择列:投影运算 为列更改显示名称: select 列名1 as 新名称,…… from 表1 此用法并不实际更改数据表结构。 例s2:把rsda2中的name显示为职工姓名 Select name as 职工姓名,职称 from rsda2; 2.1.1选择列:投影运算 显示全部列 (1)select 后罗列出所有列名; (2)用*代替列名。 例s3:显示rsda中所有列 select * from rsda; 2.1.1选择列:投影运算 列的计算 例s4a:求每人工资的3% Select 基本工资*0.03 from rsda; 2.1.2 选择行:选择运算 使用where子句 select 列 from 表 where 条件 条件一般是关系表达式或逻辑表达式,返回真值或假值。 基本原理是DBMS依次判断在每条记录上是否满足条件,若满足显示,否则不显示。 2.1.2 选择行:选择运算 例s4:查找rsda表中教授的信息。 select * from rsda where 职称=“教授”; 2.1.2 选择行:选择运算 复合条件 例s5:在RSDA数据表中查找90年1月1号以后参加工作的女职工。 select * from rsda where ; 工作日期{^1990-1-1} ; and 性别=“女”; 2.1.2 选择行:选择运算 消除取值重复的行 Select 子句的缺省情况是保留重复元组 可用 Distinct 去除重复元组 例s6:从rsda表中查看一下共有哪些职称。 //select 职称 from rsda; select distinct 职称 from rsda; 2.1.2 选择行—where子句的运算符 比较:=、、、=、=、!=、、!、!、not + ~ 确定范围: Between A and B、Not Between A and B 确定集合:IN、NOT IN 字符匹配:LIKE,NOT LIKE 空值:IS NULL、IS NOT NULL 多重条件:AND、OR、NOT 2.1.2 选择行—比较大小 例s7:查询基本工资大于1000的员工 select * from rsda where 基本工资1000; 2.1.2 选择行—确定范围 Between and 例s8:查询工资大于等于800但小于等于1000的员工 select * from rsda where 基本工资 between 800 and 1000; 思考:该语句可用哪条语句代替? 2.1.2 选择行—确定集合 In/not in 例s9:查询不是讲师、工程师的员工 select * from rsda where 职称 not in (“讲师”,”工程师”); 思考:该
显示全部
相似文档