Oracle學習筆記(五)
更新時間:2011年12月28日 22:56:23 作者:
最近需要用的oracle,所以大家好好的學習下基礎并整理下資料,希望能幫助到需要的朋友。
組合集總計:
group by with rollup/cube
grouping sets
子查詢按執(zhí)行方式分:標準子查詢、關聯(lián)子查詢
標準子查詢:嵌套子查詢
標量值查詢
case with then
使用exits查詢
select user_id,user_name from tb_001 tb
where [not] exists (select 'x'
from tb_001
where manager_id=tb.user_id )
關聯(lián)更新
update table1 alias1
set column=(select expression
from table2 alias2
where alias1.column=alias2.column);
關聯(lián)刪除
delete from table1 alias11
where column operator
(select expression
from table2 alias2
where alias1.column=alias2.column);
分層結構
分層檢索
select [level],column,expr...
from table
[where with condition(s)]
[connect by prior condition(s)]
connect by prior column1=column2
top down:
colum1=parentkey
column2=childkey
bottom up:
column1=childkey
column2=parentkey
插入語句insert statement
insert into table[(column[,column...])]
values(value[,value...])
修改語句update statement
update table
set column=value[,column=value,...]
[where condition];
多表插入語句(Multitable Insert Statements)
insert [all] [conditional_insert_clause]
[insert_into_cause values_clause](subquery)
conditional_insert_clause
[all][first]
[when condition then][insert_into_clause values_clause]
[else][insert_into+clause values_clause]
列:
intsert all
into tb_user values(id,uid,upwd)
into tb_user_info values(id,name,sex,age)
select id,uid,upwd,name,sex,age
from tb_u_10
where id>10000;
待條件的多行插入
insert all
when id>11000 then
into tb_user values(id,uid,upwd)
when age>40 then
into tb_user_info values(id,name,sex,age)
select id,uid,upwd,name,sex,age
from tb_u_10
where id>10000;
insert first
when conditional then
into ...
when conditional then
into ...
else
into...
select...
創(chuàng)建索引
cretate table t_10
(id number(6) not null primary key using index (create index index1 on t_10(id)),
name varchar2(50));
查詢索引
select * from user_indexes;
group by with rollup/cube
grouping sets
子查詢按執(zhí)行方式分:標準子查詢、關聯(lián)子查詢
標準子查詢:嵌套子查詢
標量值查詢
case with then
使用exits查詢
select user_id,user_name from tb_001 tb
where [not] exists (select 'x'
from tb_001
where manager_id=tb.user_id )
關聯(lián)更新
update table1 alias1
set column=(select expression
from table2 alias2
where alias1.column=alias2.column);
關聯(lián)刪除
delete from table1 alias11
where column operator
(select expression
from table2 alias2
where alias1.column=alias2.column);
分層結構
分層檢索
select [level],column,expr...
from table
[where with condition(s)]
[connect by prior condition(s)]
connect by prior column1=column2
top down:
colum1=parentkey
column2=childkey
bottom up:
column1=childkey
column2=parentkey
插入語句insert statement
insert into table[(column[,column...])]
values(value[,value...])
修改語句update statement
update table
set column=value[,column=value,...]
[where condition];
多表插入語句(Multitable Insert Statements)
insert [all] [conditional_insert_clause]
[insert_into_cause values_clause](subquery)
conditional_insert_clause
[all][first]
[when condition then][insert_into_clause values_clause]
[else][insert_into+clause values_clause]
列:
intsert all
into tb_user values(id,uid,upwd)
into tb_user_info values(id,name,sex,age)
select id,uid,upwd,name,sex,age
from tb_u_10
where id>10000;
待條件的多行插入
insert all
when id>11000 then
into tb_user values(id,uid,upwd)
when age>40 then
into tb_user_info values(id,name,sex,age)
select id,uid,upwd,name,sex,age
from tb_u_10
where id>10000;
insert first
when conditional then
into ...
when conditional then
into ...
else
into...
select...
創(chuàng)建索引
cretate table t_10
(id number(6) not null primary key using index (create index index1 on t_10(id)),
name varchar2(50));
查詢索引
select * from user_indexes;
相關文章
win x64下安裝oracle 12c出現(xiàn)INS-30131報錯的解決方法
這篇文章主要介紹了win x64下安裝oracle 12c出現(xiàn)INS-30131報錯的解決方法,感興趣的小伙伴們可以參考一下2016-07-07
Oracle round()函數(shù)與trunc()函數(shù)區(qū)別介紹
本文將詳細介紹Oracle round()函數(shù)與trunc()函數(shù)區(qū)別,需要了解的朋友可以參考下2012-11-11
Oracle監(jiān)聽器被優(yōu)化大師掛掉后的完美解決方法
這篇文章主要介紹了Oracle監(jiān)聽器被優(yōu)化大師掛掉后的完美解決方法,需要的朋友可以參考下2017-08-08

