oracle學習總結 二

2021-04-12 13:20:46 字數 946 閱讀 8205

一.自增型id

1.首先建立 sequence

create sequence seqmax increment by 1

2.得到乙個id

select seqmax.nextval id from dual

3.若要刪除乙個sequence

drop sequence seqmax;

二.刪除資料表中的重覆記錄

1.先建立乙個表

create

table

integer

primary

keynot

null

,"mobile" nvarchar2(

50) 

notnull

);

2.假設其中手機號大量重複,要刪除重覆記錄,可以有如下兩種方法:

(1)簡單利用rowid刪除

delete

from

where

rowid 

notin

(select

max(rowid) 

from

where

a.mobile

=b.mobile);

據說,這種方法在資料量很大時,效率並不高

(2)利用分析函式

delete

where

rowid in(

select

rid 

from

(select

rowid rid,row_number() 

over

(partition 

bymobile 

order

byid 

desc

) rn 

from

where

rn >

1) ;

(3)做temp表

oracle學習總結 二

一.自增型id 1.首先建立 sequence create sequence seqmax increment by 1 2.得到乙個id select seqmax.nextval id from dual 3.若要刪除乙個sequence drop sequence seqmax 二.刪除資料...

Oracle學習總結 二

company表的某id對應money乘以0.02 create or replace procedure compute c id in company.id type,money out company.m type,isbegin select m 0.02 into money from c...

oracle學習總結 二

一.自增型id 1.首先建立 sequence create sequence seqmax increment by 1 2.得到乙個id select seqmax.nextval id from dual 3.若要刪除乙個sequence drop sequence seqmax 二.刪除資料...