bl双性强迫侵犯h_国产在线观看人成激情视频_蜜芽188_被诱拐的少孩全彩啪啪漫画

oracle怎么做函數,oracle如何創建函數

如何創建oracle函數

create?or?replace?function?f(d?number)

成都創新互聯公司是一家專業提供臨翔企業網站建設,專注與網站設計制作、成都網站建設、HTML5建站、小程序制作等業務。10年已為臨翔眾多企業、政府機構等服務。創新互聯專業網站制作公司優惠進行中。

return?varchar

is

begin

return?substr(d,instr(d,'.')+1);

end?f;

select?f(12.34)?from?dual;

oracle中如何創建函數,本人用的是pl/sql,初學者,最好能給出例子和詳細講解

下面是一個函數的簡單示例!建議閱讀相關書籍以便充分理解!畢竟很多細節是很難一一描繪的.系統看看書會比較好!

函數是有名稱的pl/sql塊

函數有返回值

在表達式中調用函數

存儲在服務器端

CREATE OR REPLACE FUNCTION get_sal

(v_id IN emp.empno%TYPE) RETURN NUMBER

IS

v_salary emp.sal%TYPE :=0;

BEGIN

SELECT sal INTO v_salary FROM emp WHERE empno = v_id;

RETURN (v_salary);

END get_sal;

/

驗證對象

select object_name,object_type from user_objects;

查看原程序

select text from user_source;

調用函數

select get_sal(7839) from dual;

刪除函數

DROP FUNCTION get_salary;

Oracle函數的使用

接收字符返回字符或數值時可以使用dual偽表

1、把小寫字符轉換成大寫

select supper(“smi”) form dual

2、把大寫轉換成小寫

lower(“SMI”)

3、首字母大寫

initcap(“smi”)

4、字符串的連接可以使用concat,也可以使用? ? 建議使用

concat(“hello”“world”) 結果為helloworld

5、字符串的截取,使用substr,第一個參數為字符串,第二個參數是索引,第三個參數結束索引(開始索引使用0和1效果一樣)

substr(hello,0,3) 結果為hel

6、獲取字符串長度

length(“hello”)

7、字符串替換,第二個參數為被替換的字符串,第三個是替換的字符串

replace(“hello”,“l”,“x”) 結果為hexxo

1、四舍五入函數ROUND()

默認取整,可以指定保留位數

round(12.523)? 結果為13

round(12.537,2) 結果為12.54

2、取整TRUNC

默認全部去掉小數,可以指定位數

trunc(12.789) 結果為12

3、取余數MOD

mod(10,3) 結果為1

oracle中提供了很多和日期相關的函數,包括日期的加減

日期 - 數字 =日期

日期 - 日期 = 數字(天)

1、如:查詢員工進入公司的走數

(sysdate - 入職日期)/7

注:當前日期查詢select sysdate form dual

2、查詢所有員工進入公司的月數

獲取兩個時間段的月數使用months_between(sysdate,入職日期)

3、獲取幾個月后的日期:add_months()

如:獲取員工三個月后的日期

add_months(sysdate,3)

4、如求出下星期一是什么時候

指定給出下次某日期數next_date()

next_date(sysdate,“星期一”)

5、求日期的最后一天last_day()

求出本月的最后一天

last_day(sysdate)

1、to_char字符串轉換函數

如:將所有員工的入職日期的年、月分開

注:在劃分時需要通配符

年:yyyy? 月:mm? 日:dd

時:HH 分:mi? 秒:ss

定義時間格式

to_char(sysdate,“yyyy-mm-dd HH24:mi:ss”)

在10以下的月數前面會默認加上前導零,去除加上fm

to_char(sysdate,“fmyyyy-mm-dd HH24:mi:ss”)

to_char還可以給數字做格式化

如將員工的工資按三位“,”分隔

to_char(工資,“99,999”) 9代表數字

如果想在錢上加上國家符號

美元使用

中文使用l

to_char(工資,“99,999”)

to_char(工資,“l99,999”)

2、to_number數值轉換函數,將字符串轉換成數值

to_number(“10”) +to_number(“10”)

3、to_date日期轉換函數,將字符串數據轉換成日期類型

to_date(“1997-05-12”,“YYYY-mm-dd”)? 1997/05/12

1、空值處理 nvl

如果在查詢的時候存在空值的情況可以使用

nvl(comm,0) 當comm的列值為空時,用0代替

2、decode函數

該函數類似于if ...else if ...else

語法:decode(列名/值,search1,result1,search2,result2,default)

decode(中國,中國,我是中國,美國,我是美國,其他)

如果為中國返回我是中國,為美國返回我是美國,為其他字符則返回其他。

3、case when 與decode差不多

語法 case when city=中國 then 我是中國

? ? ? ? ? when city=美國 then 我是美國

? ? ? ? ? ? else 其他

oracle 怎么創建一個函數?

create or replace

FUNCTION "函數名"

(

A in number,

B in number,

name in VARCHAR2

)

BEGIN

insert into 表名 values(A+B,name);

END 函數名;

//花括號里邊就是需要傳的參數,name如果是固定的可以直接寫死,就不用傳參了

名稱欄目:oracle怎么做函數,oracle如何創建函數
文章地址:http://vcdvsql.cn/article48/hchhhp.html

成都網站建設公司_創新互聯,為您提供企業建站網站設計標簽優化、定制網站網站制作、App開發

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

網站優化排名