共計 5341 個字符,預計需要花費 14 分鐘才能閱讀完成。
這期內容當中丸趣 TV 小編將會給大家帶來有關 INFORMIX 數據庫函數都有哪些,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
一、內部函數
1、內部合計函數
1)COUNT(*)返回行數
2)COUNT(DISTINCT COLNAME)返回指定列中唯一值的個數
3)SUM(COLNAME/EXPRESSION)返回指定列或表達式的數值和;
4)SUM(DISTINCT COLNAME)返回指定列中唯一值的和
5)AVG(COLNAME/EXPRESSION)返回指定列或表達式中的數值平均值
6)AVG(DISTINCT COLNAME)返回指定列中唯一值的平均值
7)MIN(COLNAME/EXPRESSION)返回指定列或表達式中的數值最小值
8)MAX(COLNAME/EXPRESSION)返回指定列或表達式中的數值最大值
2、日期與時間函數
1)DAY(DATE/DATETIME EXPRESSION)返回指定表達式中的當月幾號
2)MONTH(DATE/DATETIME EXPRESSION)返回指定表達式中的月份
3)YEAR(DATE/DATETIME EXPRESSION)返回指定表達式中的年份
4)WEEKDAY(DATE/DATETIME EXPRESSION)返回指定表達式中的當周星期幾
5)DATE(NOT DATE EXPRESSION)返回指定表達式代表的日期值
6)TODAY 返回當前日期的日期值
7)CURRENT[FIRST TO LAST] 返回當前日期的日期時間值
8)COLNAME/EXPRESSION UNITS PRECISION 返回指定精度的指定單位數
9)MDY(MONTH,DAY,YEAR)返回標識指定年、月、日的日期值
10)DATETIME(DATE/DATETIME EXPRESSION)FIRST TO LAST 返回表達式代表的日期時間值
11)INTERVAL(DATE/DATETIME EXPRESSION)FIRST TO LAST 返回表達式代表的時間間隔值
12)EXTEND(DATE/DATETIME EXPRESSION,[FIRST TO LAST])返回經過調整的日期或日期時間值
To_char 函數將 datetime 和 date 值轉化為字符值。
To_date 函數將字符值轉化為 datetime 類型的值。例 to_date(“1978-10-07 10:00”,”%Y-%m-%d %H:%M)
例子 1、和 UNITS 合用,指定日期或時間單位 (year,month,day,hour,minute,seond,fraction):
let tmp_date = today + 3 UNITS day
例子 2、let tmp_date = MDY(10,30,2002) — 2002-10-30
例子 3、let tmp_date = today + interval(7) day to day – 當前時間加上 7 天;
注:該功能與 1 相似;
例子 4、EXTEND 轉換日期或日期時間值
let tmp_inthour = extend(datetime1,hour to hour)
3、代數函數
1)ABS(COLNAME/EXPRESSION):取絕對值
2)MOD(COLNAME/EXPRESSION,DIVISOR)返回除以除數后的模(余數)
3)POW(COLNAME/EXPRESSION,EXPONENT)返回一個值的指數冥
例子:let tmp_float = pow(2,3) –8.00000000
4)ROOT(COLNAME/EXPRESSION,[INDEX])返回指定列或表達式的根值
5)SQRT(COLNAME/EXPRESSION)返回指定列或表達式的平方根值
6)ROUND(COLNAME/EXPRESSION,[FACTOR])返回指定列或表達式的圓整化值
7)TRUNC(COLNAME/EXPRESSION,[FACTOR])返回指定列或表達式的截尾值
說明:上兩者中 FACTOR 指定小數位數,若不指定,則為 0;若為負數,則整化到小數點左邊;
注:ROUND 是在指定位上進行 4 舍 5 入;TRUNC 是在指定位上直接截斷;
let tmp_float = round(4.555,2) –4.56
let tmp_float = trunc(4.555,2) –4.55
4、指數與對數函數
1)EXP(COLNAME/EXPRESSION)返回指定列或表達式的指數值
2)LOGN(COLNAME/EXPRESSION)返回指定列或表達式的自然對數值
3)LOG10(COLNAME/EXPRESSION)返回指定列或表達式的底數位 10 的對數值
5、三角函數
1)COS(RADIAN EXPRESSION)返回指定弧度表達式的余弦值
2)SIN(RADIAN EXPRESSION)正弦
3)TAN(RADIAN EXPRESSION)正切
4)ACOS(RADIAN EXPRESSION)反余弦
5)ASIN(RADIAN EXPRESSION)反正弦
6)ATAN(RADIAN EXPRESSION)反正切
7)ATAN2(X,Y)返回坐標(X,Y)的極坐標角度組件
6、統計函數
1)RANGE(COLNAME)返回指定列的最大值與最小值之差 = MAX(COLNAME)-MIN(COLNAME)
2)VARIANCE(COLNAME)返回指定列的樣本方差;
3)STDEV(COLNAME)返回指定列的標準偏差;
7、其他函數
1)USER 返回當前用戶名
2)HEX(COLNAME/EXPRESSION)返回指定列或表達式的十六進制值
3)LENGTH(COLNAME/EXPRESSION)返回指定字符列或表達式的長度
4)TRIM(COLNAME/EXPRESSION)刪除指定列或表達式前后的字符
5)COLNAME/EXPRESSION || COLNAME/EXPRESSION 返回并在一起的字符;
8、基數函數:
1)cardinality(僅適用 IDS)函數對集合包含的元素數目計數。
智能大對象函數,(僅適用與 IDS)
filetoblob(),將文件復制到 BLOB 列中
filetoclob(), 將文件復制到 CLOB 列中
locopy(), 將 BLOB 或 CLOB 類型的數據復制到另一個 BLOB 或 CLOB 列中
lotofile(), 將 BLOB 或 CLOB 復制到文件中
9、字符串處理函數:
lower, 將字符串中每個大寫字母轉換為小寫字母
upper,將字符串中每個小寫字母轉換為大寫字母
initcap,將字符串中每個詞的首寫字母轉換成大寫
replace,將字符串中的某一組字符轉換成其他字符,例 replace(col,”each”,”eve”)
substr,返回字符串中的某一部分,例 substr(col,1,2)
substring,返回字符串中的某一部分,例 substring(col,from 1 to 4)
lpad,使用 lpad 函數已用重復次數達到必要次數的字符序列在左邊填充或截斷的字符串的副本,這取決于字符串中填充部分的指定長度。
舉例:字段 col 為 char(15)類型,select lpad(col,21,”_”) from tab_name 則顯示為在 col 前加上六個_。
Rpad,使用 rpad 函數已用重復次數達到必要次數的字符序列在右邊填充或截斷的字符串的副本,這取決于字符串中填充部分的指定長度。
舉例:字段 col 為 char(15)類型,select rpad(col,21,”_”) from tab_name 則顯示為在 col 后邊加上六個_。
10、其他函數:
hex,返回表達式的十六進制數
round,返回表達式的四舍五入值
trunc,返回表達式的截斷值
length,計算表達式的長度
user,返回執行查詢的用戶的用戶名(登陸帳戶名)
today,返回當前系統日期
dbservername,返回數據庫服務器的名稱,同 sitename
dbinfo,返回數據庫的相關信息
decode,函數來將一個具有一個值的表達式轉換為另一個值
decode(test,a,a_value,b,b_value,c,c_value……),decode 函數不支持 TEXT 和 BYTE 類型。
Nvl,來將求值為空的表達式轉化為另一個想要指定的值。
另外還可以在 select 語句中使用存儲過程,如 select spl($test) from tab_name
二、IDS 內部函數
1、DBSERVERNAME 返回數據庫服務器名 let tmp_char=DBSERVERNAME
2、SITENAME 返回數據庫服務器名 let tmp_char=SITENAME
說明:兩者功能相同;
3、DBINFO(‘SPECIAL_KEYWORD ) 返回只關鍵字值
例子 1:返回數據中每個表的 DBSPACE 名稱
select dbinfo(dbspace ,partnum),tabname from systables
where tabid 99 and tabtype= T (OK)
例子 2:返回任何表中插入的最后一個 SERIAL 值
select dbinfo(sqlca.sqlerrd1) from systables where tabid = 1
例子 3:返回最后一個 SELECT,INSERT,UPDATE,DELETE 或 EXECUTE PROCEDURE 語句處理的行數;
select dbinfo(sqlca.sqlerrd2) from systables where tabid=1;
三、其它
本函數庫共有 38 個函數
目前支持的 Informix 版本為 ODS 7.x、SE 7.x 與 Universal Server (IUS) 9.x 三種。在 ODS 7.x 的版本中,完全支持所有的資料類型,而在 IUS 9.x 中,不支持 SLOB 與 CLOB 二種類型。
要在 Web Server 上安裝 Informix Client 端,在編譯 PHP 之前 (configure 之前),要先設好 IFX_LIBDIR、IFX_LIBS 及 IFX_INCDIR 三種環境變量,若是 9.x 版尚要配置 HAVE_IFX_IUS 環境變量。同時在配置時要加入 –with_informix=yes 的選項。
ifx_connect: 打開 Informix 服務器連接。
ifx_pconnect: 打開 Informix 服務器持續連接。
ifx_close: 關閉 Informix 服務器連接。
ifx_query: 送出一個 query 字符串。
ifx_prepare: 準備 query 字符串。
ifx_do: 執行已準備 query 字符串。
ifx_error: 取得 Informix 最后的錯誤。
ifx_errormsg: 取得 Informix 最后錯誤信息。
ifx_affected_rows: 得到 Informix 最后操作影響的列數目。
ifx_getsqlca: 取得 query 后的 sqlca 信息。
ifx_fetch_row: 返回單列的各字段。
ifx_htmltbl_result: 將 query 返回資料轉成 HTML 表格。
ifx_fieldtypes: 列出 Informix 的 SQL 字段。
ifx_fieldproperties: 列出 Informix 的 SQL 字段屬性。
ifx_num_fields: 取得返回字段的數目。
ifx_num_rows: 取得返回列的數目。
ifx_free_result: 釋放返回占用內存。
ifx_create_char: 建立字符類。
ifx_free_char: 刪除字符類。
ifx_update_char: 更改字符類。
ifx_get_char: 取得字符類。
ifx_create_blob: 建立長位類。
ifx_copy_blob: 復制長位類。
ifx_free_blob: 刪除長位類。
ifx_get_blob: 取得長位類。
ifx_update_blob: 更改長位類。
ifx_blobinfile_mode: 配置長位類模式。
ifx_textasvarchar: 配置文字模式默認值。
ifx_byteasvarchar: 配置位組模式默認值。
ifx_nullformat: 配置空字符模式默認值。
ifxus_create_slob: 建立 slob 類。
ifx_free_slob: 刪除 slob 類。
ifxus_close_slob: 刪除 slob 類。
ifxus_open_slob: 打開 slob 類。
ifxus_tell_slob: 返回目前文件或找尋位置。
ifxus_seek_slob: 配置目前文件或找尋位置。
ifxus_read_slob: 讀取指定數目的 slob 類。
ifxus_write_slob: 將字符串寫入 slob 類中
上述就是丸趣 TV 小編為大家分享的 INFORMIX 數據庫函數都有哪些了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注丸趣 TV 行業資訊頻道。