Greenplum常用函數(shù)_第1頁
Greenplum常用函數(shù)_第2頁
Greenplum常用函數(shù)_第3頁
Greenplum常用函數(shù)_第4頁
Greenplum常用函數(shù)_第5頁
已閱讀5頁,還剩15頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、Greenplum常用函數(shù)Greenplum函數(shù)u函數(shù)分類u字符函數(shù)u日期函數(shù)u數(shù)學函數(shù)u聚合函數(shù)u通用函數(shù)u自定義函數(shù)u日期操作符uoracle內置函數(shù)*內置函數(shù),用戶定義函數(shù)。Greenplum字符函數(shù)1.Length() 獲取字符串長度,中文、英文、數(shù)字均按1個字符計算2.Lower() 將字符串中所有字母轉換成小寫3.Upper() 將字符串中所有字母轉換成大寫4.Trim() 將字符串前、后空格去掉。類似的:Rtrim()去右空格、 Ltrim()去左空格Greenplum字符函數(shù) 續(xù)5.Substr(str,pos,n) 字符串截取函數(shù),將str從pos的位置 開始截取n個字符6.

2、Strpos(str,str1) 獲取str中str1子串所在的起始位置7.Replace(str,str1,str2) 將str中所有包括str1的子串替換成str2Greenplum日期/時間函數(shù)1.Current_date 取當前日期2.Current_time 取當前時間3.Current_timestamp 取當前時間戳,同樣也可以用now()獲取到。Greenplum日期/時間函數(shù) 續(xù)一4.Date() 將參數(shù)轉換成日期格式5.Extract(field from source) 按field格式取出source中值,field常用取值有year,month,day,hour,mi

3、nute,doy等Greenplum日期/時間函數(shù) 續(xù)二6.To_date(str,format) 將字符串按format指定的形式轉換成日期類型7.To_timestamp(str,format) 將字符串按format指定的形式轉換成時間戳Greenplum數(shù)學函數(shù)1.abs(num) 取絕對值2.round(num,pos) 對num進行四舍五入,保留pos位小數(shù) 3.floor(num) 對num作向下取整4.ceil(num) 對num作向上取整,是ceiling()的別名函數(shù)5.sign(num) 取num的正負Greenplum數(shù)學函數(shù) 續(xù)6.mod(num,n) 求模函數(shù) 7.

4、power(num,n) 取num的n次方值8.sqrt(num) 取num的平均根 9.random() 獲取一個0-1以內的隨機數(shù)Greenplum聚合函數(shù)1.sum() 求和函數(shù)2.count() count(*) 所有記錄數(shù),count(expression) 輸入列非空記錄數(shù)3.max() 集合取最大值4.min() 集合取最小值5.avg() 集合取平均數(shù)測試數(shù)據(jù)表Greenplum通用函數(shù)1.coalesce(field,val) 當field值為null時取val作默認值,要求field與val數(shù)據(jù)類型相同2.length() 取長度函數(shù),參數(shù)既可以是字符串也可以是整型等其他類

5、型Greenplum通用函數(shù) 續(xù)3.row_number() over() 排序,無重復序號4.rank() 排序,有并列時,下個排名不連續(xù)5.dense_rank() 排序,有并列時,下個排名連續(xù)Greenplum自定義函數(shù)下面是一個沒有參數(shù)也沒有返回值的函數(shù):CREATE FUNCTION public.clean_customer() RETURNS void AS DELETE FROM testsch.customer WHERE state = NA; LANGUAGE SQL; 在select語句中調用函數(shù):SELECT public.clean_customer(); clea

6、n_customer - (1 row) CREATE OR REPLACE FUNCTION public.to_number(number1 varchar) RETURNS decimal AS $BEGINreturn cast(number1 as decimal);END;$ LANGUAGE plpgsql immutable;-兼容性重載CREATE OR REPLACE FUNCTION public.to_number(number1 INTEGER) RETURNS decimal AS $BEGINreturn cast(number1 as decimal);END;

7、$ LANGUAGE plpgsql immutable;Greenplum自定義函數(shù) 續(xù)下面是一個返回值類型為decimal的用戶定義函數(shù)及其重載方法:Greenplum函數(shù)編寫規(guī)則u包括一組SQL語句,中間使用分號分隔 可以有查詢語句 可以有DML語句,如Insert,Update,Delete 可以沒有Rollback,Savepoint,Commit等命令u返回最后一個查詢語句的結果集 如果返回類型不為空則最后必須是一個select語句u占用獨立的事務Greenplum函數(shù)分類uSQL語言函數(shù)u過程語言函數(shù) (如:PL/pgSQL or PL/Tcl) u內置函數(shù) *uC/Java語言

8、函數(shù)Greenplum的Function根據(jù)編寫語言的不同可以分為以下幾類:Greenplum日期/時間操作符操作符操作符例子例子結果結果+date 2001-09-28 + integer 7date 2001-10-05+date 2001-09-28 + interval 1 hourtimestamp 2001-09-28 01:00+date 2001-09-28 + time 03:00timestamp 2001-09-28 03:00+timestamp 2001-09-28 01:00 + interval 23 hourstimestamp 2001-09-29 00:00+time 01:00 + interval 3 hourstime 04:00-date 2001-10-01 - date 2001-09-28integer 3-date 2001-10-01 - integer 7date 2001-09-24-date 2001-09-28 - interval 1 hourtimestamp 2001-09-27 23:00-time 05:00 - time 03:00interval 0

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論