1.數學函式
abs(
) 返回絕對值
pi() 返回圓周率值
sqrt(
) 返回非負數的二次方根
mod(x,y) 返回x被y除(x/y)後的餘數,x也可以為小數
ceil(x) 或 ceiling(x) 返回不小於x最小整數值
floor(x) 返回不大於x的最大整數值
round
(x) 返回最接近於x的整數
round
(x,y) 返回最接近於x的數,其值保留小數點後y位,若y為負值,則保留小數點左邊y位
sign(x) x為負,零,正時返回結果依次為:-1,
0,1 pow(x,y) 或 power(x,y) 返回x的y次乘方的結果值
exp(x) 返回e的x乘方後的值
log(x) 返回x的自然對數
radians(
90) 將角度值90轉變為弧度值1.5707..
. degrees(pi(
)) 將弧度值轉變為角度值180
sin(
) asin(
) cos(
) acos(
) tan(
) atan(
) cot(
)
2.字串函式char_length(str) 返回str包含字元的個數
length(str) 返回字串的位元組長度,使用utf8編碼時,乙個漢字佔三個位元組,乙個數字或字母佔乙個位元組。
concat(s1,s2,..
.,sn) 把這些字串連線起來。當有null時忽略,當有任一二進位制字串,結果為乙個二進位制字串。
concat_ws(x,s1,s2,..
.,sn) 第乙個引數x是其他引數的分隔符。
left
(s,n) 返回字串s最左邊n個字元
right
(s,n) 返回字串s最右邊n個字元
lpad(s1,len,s2):返回長度len的s1字串,若s1長於len,則擷取前len個;否則,在左邊填充s2至長度為len.
rpad(s1,len,s2):返回長度len的s1字串,若s1長於len,則擷取前len個;否則,在右邊填充s2至長度為len.
ltrim(s): 字串左邊空格被刪除
rtrim(s):字串右邊空格被刪除
trim(s):字串左右兩邊邊空格被刪除
trim(s1 from s) : 刪除字串s兩端所有的子字串s1
repeat
(s,n): 返回重複n次s組成的字串。
replace
(s,s1,s2) : 使用s2替換s中的s1
substring(s,n,len):返回起始於n位置的len個字元組成的字串
position(str1 in str): 返回子字串str1在str中的開始位置
reverse(s): 將字串s反轉
3.日期和時間函式current_date
current_time 帶時區
localtime 不帶時區
current_timestamp 或 now()
localtimestamp
extract(型別 from 日期) : 從日期中提取某型別的時間值。型別有(day
,month
,year
,doy[一年中的第幾天],dow[一周中的星期幾]
,quarter[幾季度])
日期和時間的運算操作:
date
'2019-09-28'
+integer
'10' : 2019-10
-08date
'2019-09-28'
+interval
'3 hour' : 2019-09
-2803:00:00
date
'2019-09-28'
+time
'06:00' : 2019-09
-2806:00:00
date
'2019-11-01'
-date
'2019-09-10' : 5250*
interval
'2 second' : 00:01:40
interval
'1 hour'
/integer
'2' : 00:30:00
4.條件判斷函式
條件判斷函式亦稱控制流函式,根據滿足的條件而執行相應的流程。
1.表示式結果等於某個條件
case 表示式 when 條件1
then 對應值1
[when 條件2
then 對應值2
]else 沒有匹配到時的對應值 end
2.當條件為true時執行對應的流程
case
when 條件1
then 對應值1
[when 條件2
then 對應值2
]else 沒有匹配到時的對應值 end
5.系統資訊函式version(
)user
current_user
6.加密函式md5(str): 為str字串算出乙個md5 128位元檢查和。
encode(
) decode(
)
7.改變資料型別的函式cast(x as
type
) : 將乙個型別的值轉換為另乙個型別的值。
postgreSQL常用函式
select coalesce sum duration 0 若sum duration 返回值為空,則為其賦值0 select to date 2013 12 20 yyyy mm dd 字串轉化為date型別 select date 2013 10 28 01 00 interval 50 mi...
postgresql常用函式
create table search.t test 20200108 c id varchar 300 c field varchar 300 insert into search.t test 20200108 values 1 醫療器械類,化妝品類,藥品類,食品類 concat ws第乙個引數...
postgresql 常用小函式
將字串按照分隔符劃分成為陣列 create or replace function tools str2array in originstr varchar 800 in delimeter varchar 10 returns varchar 800 as declare strres varch...