第3章SQL语言 本章主要介绍了结构化查询语言SQL。SQL 是对数据库中的数据进行组织、管理和检索 的工具。Sq语言是使用关系模型的数据库 应用语言,本章以VFP为基础讲述SQL的基 本概念及其语句的基本用法
第3章 SQL语言 本章主要介绍了结构化查询语言SQL。SQL 是对数据库中的数据进行组织、管理和检索 的工具。SQL语言是使用关系模型的数据库 应用语言,本章以VFP为基础讲述SQL的基 本概念及其语句的基本用法
31SQL基础 」SQ儿是关系型数据库管理系统的标准语言。可以 用来执行各种各样的操作。 当用户需要处理数据库中的数据时,就可以通过 SQL语言发出请求,数据库对SQ请求进行处理 并将处理的结果其返回给用户 SQL请求 数据库管理系 数据库 数据 计算机系统
3.1 SQL基础 ◼ SQL是关系型数据库管理系统的标准语言。可以 用来执行各种各样的操作。 ◼ 当用户需要处理数据库中的数据时,就可以通过 SQL语言发出请求,数据库对SQL请求进行处理, 并将处理的结果其返回给用户。 计算机系统 SQL请求 数据库管理系 统 数据库 数据
sαL是一种能够控制数据库管理系统并能 与之交互的综合性语言划分为如下几类 」1.数据定义( Data definition)语言用于定义被 存放的数据的结构和组织,以及数据项之间的关 2.数据检索( Data retrieval)语言用户或应用 程序通过SqL语言从数据库中检索到并能使用 合条件的数据; 」3.数据操作( Data manipulation)语言用户或 应用程序通过Sq语言更改数据库,增加新数据 删除旧数据、修改已有数据; 4.数据控制( Data control)语言用户或应用程 序通过SQ语言控制其对数据库中数据的操作
SQL是一种能够控制数据库管理系统并能 与之交互的综合性语言划分为如下几类: ◼ 1. 数据定义(Data definition)语言 用于定义被 存放的数据的结构和组织,以及数据项之间的关 系; ◼ 2. 数据检索(Data retrieval)语言 用户或应用 程序通过SQL语言从数据库中检索到并能使用符 合条件的数据; ◼ 3. 数据操作(Data manipulation)语言 用户或 应用程序通过SQL语言更改数据库,增加新数据、 删除旧数据、修改已有数据; ◼ 4. 数据控制(Data control)语言 用户或应用程 序通过SQL语言控制其对数据库中数据的操作
31.2SQL语句 说明 语句 数据处理 SELECT 检索数据库中的数据 INSERT 插入新的数据行 DELETE 删除数据行 UPDATE 修改数据 数据定义 CREATE TABLE建立一个新表 DROP TABLEN 删除一个表 ALTER TABLE*。修改一个表的结构 CREATE VIEW 建立一个视图 DROP VIEW*删除一个视图 CREATE INDEX*建立一个索引 DROP INDEX 删除一个索引 存储控制 GRANT 授予用户存取权限 REVOKE 又限 取消用户存取权 事物控制 COMMIT 提交事务 ROLLBACK 回滚事务 编程SQL DECLARE 定义一个查询光标 OPEN 打开查询数据的光标 FETCH 检索查询结果的一行 CLOSE 关闭光标 带*号的不是 ANSI/ISO SQL标准的内容
3.1.2 SQL语句 语 句 说 明 语 句 说 明 数 据 处 理 SELECT 检索数据库中的数据 INSERT 插入新的数据行 DELETE 删除数据行 UPDATE 修改数据 数 据 定 义 CREATE TABLE 建立一个新表 DROP TABLE* 删除一个表 ALTER TABLE* 修改一个表的结构 CREATE VIEW 建立一个视图 DROP VIEW* 删除一个视图 CREATE INDEX* 建立一个索引 DROP INDEX* 删除一个索引 存 储 控 制 GRANT 授予用户存取权限 REVOKE 取消用户存取权限 事 物 控 制 COMMIT 提交事务 ROLLBACK 回滚事务 编 程 SQL DECLARE 定义一个查询光标 OPEN 打开查询数据的光标 FETCH 检索查询结果的一行 CLOSE 关闭光标 带*号的不是ANSI/ISO SQL1标准的内容
3.1.3标量操作符 算术运算符有:+(加)、-(减)、*(乘)、/ (除)、%(取模) 比较运算符有:、=、>=、< 」字符串运算符有:+。“+”实现字符串之间和连 接操作。。 布尔操作符有:NOT、AND、OR。布尔操作符在 数据库中有两个不同的约定,取决于其是应用于 位串还是用于其他数据类型。操作符NOT、AND 和OR应用于所有数据类型 位运算符有:&(与)、|(或)、^(异或)、~ (求反)
3.1.3 标量操作符 ◼ 算术运算符有:+(加)、-(减)、*(乘)、/ (除)、%(取模)。。 ◼ 比较运算符有:、=、>=、。 ◼ 字符串运算符有:+。 “+”实现字符串之间和连 接操作。。 ◼ 布尔操作符有:NOT、AND、OR。布尔操作符在 数据库中有两个不同的约定,取决于其是应用于 位串还是用于其他数据类型。操作符NOT、AND 和OR应用于所有数据类型。 ◼ 位运算符有:&(与)、|(或)、^(异或)、~ (求反)
3.14谓词 谓词定义应用于表中行的逻辑条件。SQL 语言支持下列关系操作符 BETWEEN操作符 IN操作符 LIKE操作符 ULL操作符 ALL和ANY操作符 EXISTS函数
3.1.4 谓词 ◼ 谓词定义应用于表中行的逻辑条件。 SQL 语言支持下列关系操作符: ◼ BETWEEN操作符 ◼ IN操作符 ◼ LIKE操作符 ◼ ULL操作符 ◼ ALL和ANY操作符 ◼ EXISTS函数
3.15集合函数 函数 说明产 AVG(expr) 列中值的平均值。列中只能包含数值型数据 列中的值数(如果将一个列名指定为expr)或表中的行数或组中的行值 COUNT(expr),(如果指定*)。 COUNT(expr)忽略空值,但COUN(*)在计数中包含它 COUNTO MAX(expr) 列中的最大值(文本数据类型按字母顺序排在最后的)。忽略空值 MIN(expr) 列中的最小值(文本数据类型按字母顺序排在最前的)。忽略空值 SUM(expr)列中值的合计。列中只能包含数值型数据
3.1.5 集合函数 函 数 说 明 AVG(expr) 一列中值的平均值。列中只能包含数值型数据 COUNT(expr), COUNT(*) 一列中的值数(如果将一个列名指定为 expr)或表中的行数或组中的行值 (如果指定 *)。COUNT(expr) 忽略空值,但 COUNT(*) 在计数中包含它 们 MAX(expr) 列中的最大值(文本数据类型按字母顺序排在最后的)。忽略空值 MIN(expr) 列中的最小值(文本数据类型按字母顺序排在最前的)。忽略空值 SUM(expr) 列中值的合计。列中只能包含数值型数据
3.1.6数量函数 1数值函数 函数 说明 ABS(n) 返回数值表达式中n的绝对值(即负值返回的是正值) COS(n) 计算n的余弦值。n以及结果值为 FLOAT数据类型 EXP(n) 计算e的值 LOG(n) 计算n的自然对数值(即以e为底) POWER(XY)计算X值 SIN(n) 计算n的正弦值。n以及返回的结果值为 FLOAT数据类型 SQRT(n) 计算n的平方根 TAN(n) 计算n的正切值。n以及结果值为 FLOAT数据类型
3.1.6 数量函数 函 数 说 明 ABS(n) 返回数值表达式中n的绝对值(即负值返回的是正值) COS(n) 计算n的余弦值。n以及结果值为FLOAT数据类型 EXP(n) 计算e n 的值 LOG(n) 计算n的自然对数值(即以e为底) POWER (X,Y) 计算XY值 SIN(n) 计算n的正弦值。n以及返回的结果值为FLOAT数据类型 SQRT(n) 计算n的平方根 TAN(n) 计算n的正切值。n以及结果值为FLOAT数据类型 ◼ 1 数值函数
2日期函数 函数 说明 计算两个日期datl和da2之差,并以值item指定的单位作为整 DATEDIFF(item, dat l, dat2)数返回结果 DATEADD(item, number, da 添加item指定的单位的数字 number到指定的日期date中
◼ 2 日期函数 函 数 说 明 DATEDIFF(item,dat1,dat2) 计算两个日期dat1和dat2之差,并以值item指定的单位作为整 数返回结果 DATEADD(item,number,da te) 添加item指定的单位的数字number到指定的日期date中
3字符串函数 函数 说明 LOWER(ZI) 将串Z1的所有大写字母变为小写字母。原来小写的字母和数字及其 他字符不变 RIGHT(Z,length) 返回串Z中的最后 Length个字符 SPACE(length) 返回含有由 length指定的长度的空格的串 SUBSTRING( Z, a, Leng创建串Z中从位置a开始的部分字符串,长度为 Length th
◼3 字符串函数 函 数 说 明 LOWER(Z1) 将串Z1的所有大写字母变为小写字母。原来小写的字母和数字及其 他字符不变 RIGHT(Z,length) 返回串Z中的最后Length个字符 SPACE(length) 返回含有由length指定的长度的空格的串 SUBSTRING(Z,a,Leng th) 创建串Z中从位置a开始的部分字符串,长度为Length