CSQL结构化查询语言命令
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
SQL结构化查询语言(8条)
一、数据定义
1. 表的建立(CREATE TABLE)
【命令格式】CREATE TABLE <表名> (<字段名1><数据类型>
[(<宽度>[,<小数位数>])]
[CHECK <逻辑表达式> [ERROR 字符型文本信息] ]
[DEFAULT <表达式>]
[PRIMARY KEY | UNIQUE]
[NULL | NOT NULL] [,<字段名2>…])
【功能】定义(也称创建)一个表。
2. 表的删除(DROP TABLE)
【命令格式】DROP TALBE <表名>
【功能】删除指定表的结构和内容(包括在此表上建立的索引)。
3. 表的修改(ALTER TABLE)
【命令格式】ALTER TABLE <表名>
[ADD <新字段名><数据类型>[(<宽度>[,<小数位数>])]
[ALTER <旧字段名>[<数据类型>][(<宽度>[,<小数位数>])]
[ [SET] CHECK <逻辑表达式> [ERROR 字符型文本信息] ]
[ [SET] DEFAULT <表达式1>]
[NULL | NOT NULL]
[DROP CHECK] [DROP DEFAULT]
[ADD PRIMARY KEY <表达式2> [TAG <标识名2>] ]
[ADD UNIQUE <表达式3> [TAG <标识名3>] ]
[DROP PRIMARY KEY] [DROP UNIQUE TAG <标识名>]
[DROP <字段名>]
[RENAME <旧字段名> TO <新字段名>]
【功能】修改表结构。
二、数据操纵
1. 插入记录(INSERT INTO)
【命令格式1】INSERT INTO <表名> [(<字段名表>)]
V ALUES (<表达式表>)
【命令格式2】INSERT INTO <表名>
FROM ARRAY <数组名> | FROM MEMV AR
【功能】在指定的表文件末尾追加一条记录。格式1用表达式表中的各表达式值赋值给<字段名表>中的相应的各字段。格式2用数组或内存变量的值赋值给表文件中各字段
2. 更新记录(UPDATE SET)
【命令格式】UPDA TE <表文件名> SET <字段名1>=<表达式>
[,<字段名2>=<表达式>…] [WHERE <条件>]
【功能】更新指定表文件中满足WHERE条件子句的数据。其中SET子句用于指定列和修改的值,WHERE用于指定更新的行,如果省略WHERE子句,则表示表中所有行。
3. 删除记录(DELETE FROM)
【命令格式】DELETE FROM <表名> [ WHERE <条件表达式>]
【功能】从指定的表中删除满足WHERE子句条件的所有记录。如果在DELETE语句中没有WHERE子句,则该表中的所有记录都将被删除。
三、SQL中的数据查询语句
1. 基本查询语句
【命令格式】SELECT [ALL | DISTINCT]
<字段名1> [AS <别名1>][,<字段名2> [AS <别名2>] … ]
FROM <表> [<别名>]
【功能】无条件查询。
【说明】ALL:表示显示全部查询记录,包括重复记录。
DISTINCT:表示显示无重复结果的记录。
2. 带条件(WHERE)的查询语句
【命令格式】SELECT <字段列表>
FROM <表>
[WHERE <条件表达式> ]
【功能】从一个表中查询满足条件的数据。
【说明】<条件表达式>由一系列用AND 或OR 连接的条件表达式组成,条件表达式的格式可以是以下几种:
(1)<字段名1><关系运算符><字段名2>。
(2)<字段名><关系运算符><表达式>。
(3)<字段名><关系运算符>ALL(<子查询>)
(4)<字段名><关系运算符> ANY|SOME (<子查询>)
(5)<字段名> [NOT] BETWEEN <起始值> AND <终止值>
(6)[NOT] EXISTS (<子查询>)
(7)<字段名> [NOT] IN (<值表>)
(8)<字段名> [NOT] IN (<子查询>)
(9)<字符型字段名> [NOT] LIKE <字符表达式>
(10)SQL支持的关系运算符如下:
=、<>、!=、#、==、>、>=、<、<=
(11)<字段名> IS [NOT] NULL
3. 多表查询
(1)简单连接查询
【命令格式】SELECT <字段列表>
FROM <表1> <别名1>[,<表2> <别名2>…..]
WHERE <条件表达式>
(2)超级连接查询
①内连接查询
【命令格式】SELECT <字段列表>
FROM <表1> [ INNER] JOIN <表2>
ON <条件表达式>
②外连接查询
外连接是指把两个表分为左右两个表。右外连接是指连接满足条件右侧表的全部记录。左外连接是指连接满足条件左侧表的全部记录。全外连接是指连接满足条件表的全部记录。
4.分组与计算查询
【命令格式】SELECT [TOP <数值表达式>] <字段列表>
FROM <表>
[WHERE <条件>]
[GROUP BY <分类字段列表>…]
[HA VING <过滤条件>]
[ORDER BY <排序项> [ASC | DESC]
【功能】包括有排序、函数运算和谓词演算。
5. 查询去向
①浏览窗口:默认情况下,查询输出到一个浏览窗口。
②INTO ARRAY 数组名:将查询结果保存到一个数组中。
③INTO CURSOR< 临时表名>:将查询结果保存到一个临时表中。
④INTO DBF | TABLE <表名>:将查询结果保存到一个永久表中。
⑤TO FILE<文件名>[ADDITIVE]:将查询结果保存到文本文件中。如果带“ADDITIVE”关键字,查询结果以追加方式添加到<文件名>指定的文件,否则,以新建或覆盖方式添加到<文件名>指定的文件。
⑥TO SCREEN:将查询结果保在屏幕上显示。
⑦TO PRINTER:将查询结果送打印机打印。
四、创建视图
【命令格式】CREATE VIEW <视图名>
【功能】此命令创建一个视图。
VF中的通配符:?指代任意一个字符(包括零个);
* 指代任意多个字符(包括零个)。
SQL中的通配符:_指代任意一个字符(包括零个);
%指代任意多个字符(包括零个)。