資料庫中的函數用途

WBOY
發布: 2024-01-12 19:48:05
轉載
837 人瀏覽過

函數在資料庫中扮演什麼角色

資料庫中的函數封裝了一些通用的功能,例如日期類型和字串類型之間的轉換,每個資料庫系統都內建了一些函數,當然使用者也可以自己定義自己的函數。

這些函數可以在sql和後台預存程序或觸發器中使用,但是使用了這些函數的SQL已經不是標準的SQL了,無移植性可言。所以一般情況下,在SQL中盡量不要用自訂的函數,要用的話也最好用在儲存過程或觸發器中。即使資料庫內建的函數也盡量避免,因為每個資料庫的寫法都不同,日期類型和字串的轉換就是個例子。

在使用函數帶來的優點時,同時也失去了移植性。

當然,在移植一個程式到不同資料庫時,使用函數有時可避免修改sql。例如使用來源A資料庫時,sql包含大量的函數fa,但是目標資料庫B中對應的函數是fb,這時可以在資料庫B中建立一個fa的函數,就避免了修改sql語句。

oracle資料庫中函數怎麼使用

oracle資料庫中函數較多,而且每個函數都有自己的用法,所以要根據具體的函數查詢具體的使用方法,例如:

decode(條件,值1,傳回值1,值2,傳回值2,...值n,回傳值n,預設值)

這個函數運行的結果是,當欄位或欄位的運算的值等於值1時,函數傳回值2,否則傳回值3

當然值1,值2,值3也可以是表達式,這個函數使得某些sql語句簡單了許多

使用方法:

1、比較大小

select decode(sign(變數1-變數2),-1,變數1,變數2) from dual;

--取較小值

sign()函數根據某個值是0、正數還是負數,分別回傳0、1、-1

例如:

變數1=10,變數2=20

則sign(變數1-變數2)回傳-1,decode解碼結果為“變數1”,達到了取較小值的目的。

2、此函數用在SQL語句中,功能說明如下:

Decode函數與一系列嵌套的

IF-THEN-ELSE語句相似。 base_exp與compare1,compare2等依序進行比較。如果base_exp和 第i

個compare項匹配,就回傳第i 個對應的value

。如果base_exp與任何的compare值都不匹配,則傳回default。每個compare值順次值,如果發現一個匹配,則剩下的compare值(如果還有的話)就不再值。一個為NULL的base_exp被認為和NULL

#compare值等價。如果需要的話,每一個compare值都被轉換成和第一個compare 值相同的資料類型,這個資料型別也是傳回值的型別。

excel裡的普通常用函數公式有哪些

1、ABS函數

函數名稱:ABS

主要功能:出對應數字的絕對值。

使用格式:ABS(number)

參數說明:number代表需要絕對值的數值或引用的儲存格。

應用範例:如果在B2單元格中輸入公式:=ABS(A2),則在A2單元格中無論輸入正數(如100)或負數(如-100),B2中均顯示正數(如100)。

特別提醒:如果number參數不是數值,而是某些字元(如A等),則B2中傳回錯誤值「#VALUE!」。

2、AND函數

函數名稱:AND

主要功能:傳回邏輯值:如果所有參數值均為邏輯“真(TRUE)”,則傳回邏輯“真(TRUE)”,反之傳回邏輯“假(FALSE)”。

使用格式:AND(logical1,logical2, ...)

參數說明:Logical1,Logical2,Logical3…:表示待測試的條件值或表達式,最多這30個。

應用範例:在C5儲存格中輸入公式:=AND(A5>=60,B5>=60),確認。若C5中回傳TRUE,表示A5和B5中的數值皆大於等於60,若傳回FALSE,表示A5和B5中的數值至少有一個小於60。

特別提醒:如果指定的邏輯條件參數包含非邏輯值時,則函數傳回錯誤值「#VALUE!」或「#NAME」。

3、AVERAGE函數

函數名稱:AVERAGE

主要功能:出所有參數的算術平均值。

使用格式:AVERAGE(number1,number2,…)

參數說明:number1,number2,…:需要平均值的數值或引用儲存格(區域),參數不超過30個。

應用範例:在B8單元格中輸入公式:=AVERAGE(B7:D7,F7:H7,7,8),確認後,即可出B7至D7區域、F7至H7區域中的數值和7 、8的平均值。

特別提醒:如果引用區域中包含「0」值儲存格,則計算在內;如果引用區域中包含空白或字元儲存格,則不計算在內。

4、COLUMN 函數

函數名稱:COLUMN

主要功能:顯示所引用儲存格的列標號值。

使用格式:COLUMN(reference)

參數說明:reference為引用的儲存格。

應用範例:在C11儲存格中輸入公式:=COLUMN(B11),確認後顯示為2(即B列)。

特別提醒:如果在B11單元格中輸入公式:=COLUMN(),也顯示出2;與之相對應的還有一個返回行標號值的函數-ROW(reference)。

5、CONCATENATE函數

函數名稱:CONCATENATE

主要功能:將多個字元文字或儲存格中的資料連接在一起,顯示在一個儲存格中。

使用格式:CONCATENATE(Text1,Text…)

參數說明:Text1、Text2…為需要連接的字元文字或引用的儲存格。

應用範例:在C14單元格中輸入公式:=CONCATENATE(A14,"@",B14,".com"),確認後,即可將A14單元格中字元、@、B14單元格中的字元和.com連接成一個整體,顯示在C14單元格中。

特別提醒:如果參數不是引用的單元格,且為文字格式的,請給參數加上英文狀態下的雙引號,如果將上述公式改為:=A14&"@"&B14&".com",也能達到相同的目的。

以上是資料庫中的函數用途的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:docexcel.net
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板