Oracle常用操作-----(一)

时间:2022-11-06 20:42:00

Oracle创建约束:

ALTER TABLE 表名 ADD CONSTRAINT 约束名 约束内容。

【注】Oracle中的default是一个值,而sql server中的default是一个约束,因此Oracle的default设置可以在建表的时候创建。

查询:

select *|列名|表达式 from 表名 where 条件 order by 列名

Oracle中可以把查询的结果弄一张新表:

create table 表名 as select 语句

如果是复制表结构,只需要查询条件不成立即可。如create table t2 as select * from t1 where 1=2;

插入:

insert into 表名(列名1,列名2……) values(值1,值2)

【注】列名可以省略,当列名省略时,默认是表中的所有列名,且顺序相同。

在执行操作之后需要commit提交操作,只有提交之后,数据才能真正的更新,否则无法查询到相应的结果。

同时,insert命令可以完成结果集的插入,如:insert into 表 select 子句。但是要求表结构是一致的。

更新:
update 表名 set 列名1=值,列名2=值……where 条件

删除:

Oracle在表中删除数据的命令是:delete from 表名 where 条件

truncate命令可以把表中的数据一次性全部删除:truncate table 表名

truncate删除之后的数据不能恢复,delete删除之后的数据可以通过日志文件进行恢复。

算数运算符:

Oracle中的算数运算符只有+、-、*、/,/的结果是浮点数,求余运算需要通过函数MOD(X,Y)

关系运算符:

=、<>或者!=、<、>、<=、>=

逻辑运算符:

AND、OR、NOT

字符串连接操作用  ||

消除重复行:

采用关键字DISTINCT,如:SELECT DISTINCT DEPTNO FROM EMP;

可以使用BETWEEN...AND...指定一个区间

LIKE:

%:表示零个或者多个任意字符        _:代表一个任意字符

LIKE '字符串' escape '字符'      escape后面的字符为转义字符

表达式 说明
'S%' 以S开头的字符串
'_s%' 第二个字符为s的字符串
'%30\%%' escape '\' 包含“30%”的字符串,“\”为转移字符

集合运算:

  • INTERSECT(交集),返回两个查询结果共有的记录
  • UNION(并集),返回各个查询的所有记录,不包含重复的
  • UNION ALL(并集),包含重复的
  • MINUS(补集),返回第一个查询结果减去第二个查询结果之后的记录