Oracle-SQL
SQL 结构化查询语言
1、特点 第四代编程语言(更接近自然语言)
在数据库系统里,维护操作查询数据的语音
不需要区分大小写
字符串要使用单引号 ‘’ 引起来,不能用双引号 “”
每条语句后使用分号 ; 结束
2、分类 DDL 数据定义语言 创建、修改和删除数据库的表
create 创建
alter 修改
drop 删除
DML 数据操作语言 添加、修改和删除表中的数据
insert into 添加数据 insert into 表名 (列名1,列名2) values (‘数据1’,‘数据2’); 单行插入
从其他表复制数据 insert into 新表(列名1) select 旧表列名1/* from 旧表;
多行插入(主要用于表之间数据复制)
update 修改数据 update 表名 set 列名1 = ‘新值1’,列名2=‘新值2’ where 条件 (修改单个数据为新值)
update 表名 set 列名 = 列名-100 where 条件 (修改值-100)
delete 删除数据 delete 表名 where 条件 适用于单独的数据(可以不加where条件用于删除全表)
truncate table 表名 适用于快速清空表(先删除表,再建表)
order by 排序 select * from 表名 t order by 列名 desc (默认为升序asc,加desc为降序。要放在where后)
select * from 表名 t order by 列名1 desc,列名2 desc
join 多表之间的关联查询
内连接 select * from 表1,表2 where 表1列 = 表2列
select * from 表1 join 表2 on 表1列 = 表2列 where条件
(特点:表1的数据和表2没有可关联的数据,那么该条数据会被隐藏 )
外连接 select * from 表1 lift join 表2 on 表1列 = 表2列 where条件 (lift 左边的表1全部查询,包括控制数据)
select * from 表1 right join 表2 on 表1列 = 表2列 where条件 (right 右边的表2全查询,同lift类似)
select * from 表1 full join 表2 on 表1列 = 表2列 where条件 (左右两表数据全部查询,类似左右同步)
DQL 数据查询语言 从表中获取符合过滤条件的数据
select 查询 select * from 表名 查询表
select 列名 from 表名 查询表中的列(可一次查询多列)
select * from 表名 t where t.tno='222';
(*表示所有字段,表名后可以加小名,where是查询限定条件)
字段名 as 别名 字段名后可以加别名(汉字)
where 条件 必须附在DQL,QML语句后面使用,where后面跟逻辑表达式
限定查询的条件
DCL 数据控制语言 控制用户或角色的数据库的访问权限
TPL 事务处理语言 通过事务确保DML(数据操作)执行结果正确
commit 提交事务
rollback 回滚事务
CCL 指针控制语言 遍历和处理DQL(数据查询)执行后的结果集
3、注释 行注释 --
块注释 /**/
4、语句的运算符
算术运算符 + — * /
比较运算符 > < >= <= = !=或<>
逻辑运算符 and 与 or 或 not 非(结合其他关键字使用)
字符串连接符 ||
判断是否为空 is null is not null (不能用 = 9或 != 判断是否为空)