常用PostgreSQL函式

2021-10-22 18:33:03 字數 2816 閱讀 7425

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...