oracle视图查询数据类型,子查询 oracle输入 set语句 MERGE 事务 数据类型 约束 视图 外键...

1- 子查询

select  count(*)  from t1 where t1.score > any (select score from t1 where t1.name='zhangjia' )

等价于 :select * from t1 where t1.score >  (select min(score) from t1 where t1.name='zhangjia' )

等价于:select count(*) from t1 where t1.score  in (select score from t1 where t1.name='zhangjia' );

select * from t1 where t1.score > all (select score from t1 where t1.name='zhangjia' )

all 大于最大的

any 大于最小的

in  进行等值判断

2- oracle输入

select &a+&b from dual --oracle输入输出:会提示输入参数a、b

3- set语句

set pagesize 10 设置页大小

set linesize 20 设置列的显示宽度

4- 格式控制:控制长度等属性

可以控制列显示的宽度;

对于字符用'a' 数字用

col NAME FOR  a10 --设置设置name列的显示宽度为10

select

注:oracle输入、set语句、格式控制三种命令属于sqlplus 不属于oracle

5 - MERGE

oracle的DML共四条语句  insert /update /delete /merge

merge into t2 using t1 on (t1.emp_no=t2.emp_no)

when matched then

update set  t2.name=t1.name;                 --若编号相同 更新t2表数据 ;编号不匹配插入数据

when not matched then

insert value(t1.emp_no);

create table t3 as select name myname from t2; --创建有字段myname的表 t3

insert update 也可以有子查询

insert into (select name from t2) values('fff');

truncate --删除数据 直接从内存删除;

truncate table t3

select * from t3

alter table t3 rename to t4                    --表改名

6- 事务

原子性、并发性、持久性 、隔离性

可以建立保留点,将来可以回滚到指定点

savepoint t1                  --保留点

rollback                      --回滚所有忽略保留点

rollback  to savapoint t1     --回滚到保留点t1;

隐式事务处理

7- 数据类型

timestamp                     --时间精度更高

INTERVAL

timestamp (4) with time zone  --时间精度为‘4’ 设置时区

8- 约束;对数据库的数据进行控制

not null

unique  --唯一性 针对非空

check

alter table user_info modify id not null ;                                  --新增非空约束

alter table user_info add constraint pk_aa_ID  unique(ID,SEX);              --创建唯一约束

alter table user_info add constraint pk_aa_SEX  check( sex in('男','女'));  --新增约束限定sex输入必须是这两项之一

alter table user_info drop constraint pk_aa_id  ;                           --删除约束

约束的禁用和启用

alter table user_info disable constraint pk_aa_id  cascade;                 --禁止约束

alter table user_info enable constraint pk_aa_id  ;                         --启动约束

select * from dba_constraints t where t.owner='FUJIA'  AND t.constraint_name='PK_AA_SEX' --查询索引:存在数据字典的数据都是大写

select * from user_constraints t  --查询当前用户的约束

select * from all_constraints     -- 查询所有约束

9- 外键约束

create table user_level (id number primary key,

levelname varchar2(100) )

--创建user_info外键

alter table user_info add constraint foreign_key foreign key (userlevel) references user_level(id) on delete cascade;

select * from user_info

desc user_info                                    --查看表结构

10- 视图:

作用:1 简化sql将经常查询的数据单独提取出来;2 可以隐藏一部分表信息

create or replace view v_t1 as select * from t1 with check option  --创建视图:视图中的数据与原表数据保持一致

select * from v_t1  r where  r.EMP_NO='1'         --查询视图

insert into v_t1 (name) values('jiajia');

select * from t1 where name = 'jiajia'   --差得原表中同样新增了一条记录

查询视图

11- TOP-N

rownum

select rownum,score,name from t1 where rownum<10 order by score asc,rownum

select rownum,score,name from t1 where rownum<>10  --结果与‘

select rownum,score,name from t1 where rownum=10   -- '=' '>'在这里边无法显示,在结果接种不能指定到莫一列。

仅限于‘

12- 动态性能视图

其他:扩展知识

OCI  oracle对C的开发接口

select ADD_MONTHS(SYSDATE,-12) from DUAL

select (INTEVAL '1-6' YEAR TO MONTHS) FROM DUAL

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值