SQL语句
1. 数据定义
创建基本表
create table
(列名 数据类型 列级完整性约束,
。。。。);
create table course
(A int unique not null,
B int,
foreign key B references course(A));
修改基本表
alter table 表名
add 列名 数据类型 完整性约束
drop 完整性约束名(列名)
alter column 列名 数据类型 ##修改数据类型
删除基本表
drop table 列名
建立索引
create (unique)(cluster)
index 索引名
on 表名(列名 次序 列名 次序。。。。)
删除索引
drop index 索引名
2.数据查询
select (all|distinct)
目标列名
from 表名、视图名
where 条件表达式
group by 分组列 having 条件表达式
order by 排序列 【asc|desc】(默认升序,每一个字段都要写)
where用法
between 下限 and 上限
in (字段组)
like 匹配串 escape ‘换码字符’
%任意长度字符串
_单个字符
如果不含通配符,like可为=
聚集函数
avg()求平均
count()求个数
max()求最大值
min()求最小值
sum()求和
分组查询
group by 字段 having 条件
多表查询
等值连接
字段=字段
若去除重复字段,为自然连接
自身连接
select a.*** ,b.*** from SC a,SC b where a.p=b.p
外连接
表名 left/right join 表名 on 连接条件
嵌套查询
where 字段 in (select 。。。。)
where 字段 = (select 。。。)
‘>any 大于查询结果的最小值
‘>all 大于查询结果的最大值
带exists的查询
where exists (。。。)返回true或者false
3.数据更新
数据插入
insert into 表名 values (。。。)
insert into 表名 子查询
数据删除
delete from 表名 where 条件
数据修改
update 表名 set 列名= 表达式 where 。。。
4.数据控制
赋予权限
grant 权限 on 对象(table) to 用户
收回权限
revoke 权限 on 对象 from 用户
5.视图
数据库只存放视图的定义,是一个虚表
对视图进行修改,基本表也会变化,(类似指针)
视图创建
create view 视图名 列名 as 子查询
视图查询
同对基本表进行查询
视图的更新
update 视图名 set 字段=“。。” where 条件
视图的删除
drop view 视图名