標籤:小數 時間函數 substr函數 ble name 格式 大全 binary eth
DB2 內建的函數真的是很多,要精通每個函數幾乎是不可能的,所以本文並不打算介紹每個函數的具體用法,而是提供一個概覽,讓您瞭解每個函數的功能,這樣,當你感覺你需要某些功能的函數時,再學習它們的具體用法也不遲。
DB2 內建函數大體分為以下幾類:
彙總函式 類型轉換函式 數學函數 字串函數 日期時間函數 XML 函數 分區函數 安全函數 其他
下面我們就瞭解一下每類都有哪些函數,以及這些函數的功能。
一:彙總函式
VALUE函數 文法:VALUE(EXPRESSION1,EXPRESSION2) VALUE函數是用返回一個非空的值,當其第一個參數非空,直接返回該參數的值,如果第一個參數為空白,則返回第一個參數的值。 COALESCE函數 文法:COALESCE(ARG1,ARG2...) COALESCE返回參數集中第一個非null參數。用法類似於VALUE函數。 LENGTH函數 文法:LENGTH(ARG) LENGTH函數返回參數的長度。 LCASE、LOWER函數 文法:LCASE()、LOWER() LCASE、LOWER函數返回定長、變長字串的小寫形式。 UCASE、UPPER函數 文法:UCASE()、UPPER() UCASE、UPPER函數返回定長、變長字串的大寫形式。 LTRIM、RTRIM函數 文法:LTRIM()、RTRIM() LTRIM、RTRIM函數從CHAR、VARCHAR、GRAPHIC或者VARGRAPHIC中去掉左側或右側的空格。 LEFT、RIGHT函數 文法:LEFT(ARG,LENGTH)、RIGHT(ARG,LENGTH) LEFT、RIGHT函數返回ARG最左邊、右邊的LENGTH個字串,ARG可以是CHAR或BINARY STRING。 CONCAT函數 文法:CONCAT(ARG1,ARG2) CONCAT函數返回兩個字串的串連。 INSERT函數 文法:INSERT(ARG1,POS,SIZE,ARG2) INSERT函數返回一個字串,將ARG1從POS處刪除SIZE個字元,將ARG2插入該位置。 LOCATE函數 文法:LOCATE(ARG1,ARG2,<POS>) LOCATE函數在ARG2中尋找ARG1第一次出現的位置,如果指定POS,則從ARG2的POS處開始尋找ARG1第一次出現的位置。 POSSTR函數 文法:POSSTR(EXP1,EXP2) POSSTR函數返回EXP2在EXP1中的位置。 REPEAT函數 文法:REPEAT(ARG1,NUM_TIMES) REPEAT函數返回ARG1被重複NUM_TIMES次的字串。 REPLACE函數 文法:REPLACE(EXP1,EXP2,EXP3) REPLACE函數用EXP3代替EXP1中所有的EXP2。 SPACE函數 文法:SPACE(SIZE) SPACE函數返回一個包含SIZE個空格的字串。 SUBSTR函數 文法:SUBSTR(ARG1,POS,<LENGTH>) SUBSTR函數返回ARG1中POS位置開始的LENGTH個字元,如果沒有指定LENGTH,則返回剩餘的字元。
二:類型轉換函式
DB2為每種資料類型都提供了相應的函數,一般情況下它們之間的相互轉換是非常簡單的,請看下錶:函數 功能描述 SMALLINT 返回 SMALLINT 類型的值 INTEGER 返回 INTEGER 類型的值 BIGINT 返回 BIGINT 類型的值 DECIMAL 返回 DECIMAL 類型的值 REAL 返回 REAL 類型的值 DOUBLE 返回 DOUBLE 類型的值 FLOAT 返回 FLOAT 類型的值 CHAR 返回 CHARACTER 類型的值 VARCHAR 返回 VARCHAR 類型的值 VARCHAR_FORMAT_BIT 將位字元序列格式化為 VARCHAR 類型返回 VARCHAR_BIT_FORMAT 將格式化後位字元序列返回到格式化前 LONG_VARCHAR 返回 LONG VARCHAR 類型的值 CLOB 返回 CLOB 類型的值 GRAPHIC 返回 GRAPHIC 類型的值 VARGRAPHIC 返回 VARGRAPHIC 類型的值 LONG_VARGRAPHIC 返回 LONG VARGRAPHIC 類型的值 DBCLOB 返回 DBCLOB 類型的值 BLOB 返回 BLOB 類型的值 DATE 返回 DATE 類型的值 TIME 返回 TIME 類型的值 TIMESTAMP 返回 TIMESTAMP 類型的值
三:數學函數
函數 功能描述 ABS,ABSVAL 返回參數的絕對值 SIGN 如果參數大於0則返回1,小於0返回-1,等於0返回0 RAND 返回0和1之間的隨機浮點數 MOD 求餘數 ROUND 返回參數1小數點右邊的第參數2位置處開始的四捨五入值 TRUNCATE OR TRUNC 從運算式小數點右邊的位置開始截斷並返回該數值 FLOOR 返回小於或等於參數的最大整數 CEILING OR CEIL 返回大於或等於參數的最小的整數值 POWER 返回參數1的參數2次冪 SQRT 返回該參數的平方根 DIGITS 返回參數絕對值的字串表示 MULTIPLY_ALT 返回參數的乘積 DEGREES 求角度 RADIANS 將度轉換為弧度 SIN 正弦函數 SINH 雙曲線正弦函數 ASIN 反正弦函數 COS 餘弦函數 COSH 雙曲線餘弦函數 ACOS 反餘弦函數 TAN 正切函數 TANH 雙曲線正切函數 ATAN 反正切函數 ATANH 雙曲線反正切函數 ATAN2 反正切函數 COT 餘切函數 LN 返回參數的自然對數 LOG 返回參數的自然對數 LOG10 返回基於10的自然對數 EXP 返回參數的指數函數
四:字串函數
函數 功能描述 ASCII 將字元轉化為ASCII碼 CHR 將ASCII碼轉化為字元 STRIP 刪除字串開始和結尾的空白字元或其他指定的字元 TRIM 刪除字串開始和結尾的空白字元或其他指定的字元 LTRIM 刪除字串開始的空白字元 RTRIM 刪除字串尾部的空白字元 LCASE or LOWER 返回字串的小寫 UCASE OR UPPER 返回字串的大寫 SUBSTR 返回子串 SUBSTRING 返回子串 LEFT 返回開始的N個字元 RIGHT 返回結尾的N個字元 POSITION 返回參數2在參數1中的第一次出現的位置 POSSTR 返回參數2在參數1中的第一次出現的位置 LOCATE 返回參數2在參數1中的第一次出現的位置 SPACE 返回由參數指定的長度,包含空格在內的字串 REPEAT 回參數1重複參數2次後的字串 CONCAT 串連兩個字串 INSERT 向指定字串添加字串 REPLACE 替換字串 TRANSLATE 將字串中的一個或多個字元替換為其他字元 CHARACTER_LENGTH 返回字串的長度 OCTET_LENGTH 返回字串的位元組數 ENCRYPT 對字串加密 DECRYPT_BIN and DECRYPT_CHARs 對加密後的資料解密 GETHINT 返回密碼提示 GENERATE_UNIQUE 產生唯一字元序列
五:日期時間函數
函數 功能描述 YEAR 返回日期的年部分 MONTH 返回日期的月部分 DAY 返回日期的日部分 HOUR 返回日期的小時部分 MINUTE 返回日期的分鐘部分 SECOND 返回日期的秒部分 MICROSECOND 返回日期的微秒部分 MONTHNAME 返回日期的月份名稱 DAYNAME 返回日期的星期名稱 QUARTER 返回指定日期是第幾季度 WEEK 返回當前日期是一年的第幾周,每周從星期日開始 WEEK_ISO 返回當前日期是一年的第幾周,每周從星期一開始 DAYOFWEEK 返回當前日期是一周的第幾天,星期日是1 DAYOFWEEK_ISO 返回當前日期是一周的第幾天,星期一是1 DAYOFYEAR 返回當前日期是一年的第幾天 DAYS 返回用整數表示的時間,用來求時間間隔 JULIAN_DAY 返回從January 1, 4712 B.C(Julian date calendar)到指定日期的天數 MIDNIGHT_SECONDS 返回午夜到指定時間的秒數 TIMESTAMPDIFF 返回兩個timestamp型日期的時間間隔 TIMESTAMP_ISO 返回timestamp類型的日期 TO_CHAR 返回日期的字串表示 VARCHAR_FORMAT 將日期格式化為字串 TO_DATE 將字串轉化為日期 TIMESTAMP_FORMAT 將字串格式化為日期
六:XML 函數
在 DB2 SQL 函數中使用 XML
七:分區函數
函數 功能描述 DATAPARTITIONNUM 返回資料分區中的序號 DBPARTITIONNUM 返回行的分區號 HASHEDVALUE 返回行的 distribution map index (0 to 4095)
八:安全函數
函數 功能描述 SECLABEL 返回未命名的安全性標籤 SECLABEL_BY_NAME 返回具體的安全性標籤 SECLABEL_TO_CHAR 返回標籤的所有元素
九:其他
函數 功能描述 COALESCE 將null轉化為其他值 VALUE 將null轉化為其他值 NULLIF 如果兩個參數相等,則返回null,否則,返回第一個參數 HEX 返回一個值的16進位表示 LENGTH 返回一個值的長度 TABLE_NAME 返回table名 TABLE_SCHEMA 返回schema名 TYPE_ID 返回資料類型表示 TYPE_NAME 返回資料類型名 TYPE_SCHEMA 返回schema名 DEREF 返回參數類型的執行個體 IDENTITY_VAL_LOCAL 返回最後分配給識別欄位的值 REC2XML 返回XML標記格式的字串,包含列名和列資料 EVENT_MON_STATE 返回某事件監視器的操作狀態 RAISE_ERROR 拋出錯誤,可以指定sqlstate和error_message,有點像java的拋出異常
【轉】DB2資料庫函數大全