程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> 其他數據庫知識 >> MSSQL >> oracle進修筆記(二)

oracle進修筆記(二)

編輯:MSSQL

oracle進修筆記(二)。本站提示廣大學習愛好者:(oracle進修筆記(二))文章只能為提供參考,不一定能成為您想要的結果。以下是oracle進修筆記(二)正文


1、多行函數又稱組合函數(Group Functions)、聚合函數

1、 Types of Group Functions
avg、count、max、min、stddev、sum、variance
avg 求均勻數
select avg(nvl(列1,0)) from 表1
count求行數
在where前提中不許可應用聚合函數,但可使用having avg(列1)>1000
having所起的感化和where一樣

2、子查詢Subqueries

查詢前10行數據
oracle: select * from 表名 where rownum<=10;
sql: select top 10 * from 表名
單行子查詢
select * from 表1 where 工資列1>(select avg(工資列1) from 表1)
多行子查詢
select * from 表1 where 工資列1 in(select min(工資列1) from 表1 group by 部分列)

3、自界說變量

set verify on/off
show all
help show/set

column lie justify left

4、數據操作語句

1、insert拔出語句
向表2裡拔出數據
oracle:insert into (select 列1,列2 from 表2)values('XXX','XXX');
oracle/sql:insert into(列1,列2)values('XXX','XXX');
從另外一個內外復制數據
oracle/sql:insert into 表(列1,列2)select 列1,列2 from 表2

2、update語句
都為: update table set column1='...'[ ,column2='...'] where ...
嵌入子查詢的修正
update table set column1=(select column2 form table where columnid=1) where column1='...'

delete刪除語句
delete [from] table [where condition]

merge 歸並語句
oracle:
merge into 表1 a using 表2 b on (a.id=b.id)
when matched then
update set
a.name=b.name,
a.other=b.other
when not matched then
insert values(b.id,b.name,b.other);
sql:歸並insert,update
辦法1:
declare @ROWCOUNT int
set @ROWCOUNT=(select count(*) from tb_name where name1='5')
if @ROWCOUNT!=0
update tb_name set name2='55555555' where name1='5'
else
insert into tb_name(name1,name2) values('5','拔出')
辦法2:
update tb_name set name2='55555555' where name1='6'
if @@ROWCOUNT=0
insert into tb_name(name1,name2) values('6','拔出')

五,事務: 隱式、顯式的事務

commit提交事務
rollback 回滾事務
locking鎖
對並發性體系主動加鎖,事務提交後、或回滾後主動解鎖。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved