SQL语句(一)

数据定义

模式

定义模式:

 CREATE SCHEMA "模式名" AUTHORIZATION <用户名> 

删除模式:

DROP SCHEMA "模式名" CASCADE/RESTRICT
// CASCADE(级联):在删除模式的同时把所有的数据库对象全部删除
// RESTRICT(限制):如果该模式中已定义了下属的数据库对象(表、视图等),则拒绝删除语句的执行

基本表

定义基本表:

CREATE TABLE <表名> (<列名><数据类型>[列级完整性约束条件]
					,<列名><数据类型>[列级完整性约束条件]
					...
					,[表级完整性约束条件]);

eg:
CREATE TABLE Table1 (TA001 CHAR(9) PRIMARY KEY,
					TA002 SMALLINT UNIQUE,
					TA003 CHAR(4),
					TA004 DATE);
CREATE TABLE Table2 (TB001 CHAR(9) ,
					TB002 SMALLINT UNIQUE,
					TB003 TIME,
					TB004 DATE,
					PRIMARY KEY(TB001,TB002),
					FOREIGN KEY (TB001) REFERENCES Table1(TA001));

删除基本表:

DROP TABLE <表名> [RESTRICT/CASCADE]

索引

建立索引:

CREATE [UNIQUE][CLUSTER] INDEX <索引名> ON <表名> (<列名>[<次序>]...)
次序:ASC升序(默认),DESC降序
**UNIQUE**:表示此索引的每一个索引值只对应唯一的数据记录
**CLUSTER**:表示要建立的索引是聚簇索引

修改索引:

ALTER INDEX <旧索引名> RENAME TO <新索引名>

删除索引:

DROP INDEX <索引名>

数据查询

SELECT [ALL /DISTINCT] <目标列表达式> [,<目标列表达式>]...
FROM <表名/视图名...> /(SELECT语句)[AS]<别名>
[WHERE <条件表达式>]
[GROUP BY <列名1> <HAVING<条件表达式>]]  #将查询结果按一列或多列的值分组,值相等的一组
ORDER BY <列名2> [ASC/DESC]];  #对一个或多个属性列的排序

DISTINCT:去掉重复行

=等于 >大于 <小于 >=大于等于 <=小于等于
!=或<>不等于 !>不大于 !<不小于

确定范围:BETWEEN…AND…
NOT BETWEEN…AND…

字符匹配:%代表任意长度的字符串 _代表任意字符
[NOT] LIKE '<匹配串>' [ESCAPE '换码字符>']

数据更新

插入数据:

	INSERT INTO <表名>[(属性列1)(属性列2)...] VALUES(<常量1>[,<常量2>]...)

修改数据:

UPDATE <表名> SET <列名>=<表达式>...
[WHERE <条件>];

删除数据:

DELETE FROM <表名> [WHERE<条件>];

视图

建立视图:

CREATE VIEW <视图名> [<列名>...]
AS<子查询>
[WITH CHECK OPTION];

删除视图:

DROP VIEW <视图名>[CASCADE];
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值