MySql函式大全

2021-08-28 05:04:05 字數 3475 閱讀 5555

mysql資料庫提供了很多函式包括:

數學函式

字串函式 //mysql中處理字串時,預設第乙個字元下標為1,即引數position必須大於等於1

日期和時間函式

條件判斷函式

系統資訊函式

加密函式

格式化函式

函式說明

abs(x)

返回x的絕對值

ceil(x)

返回大於或等於x的最小整數,select ceil(1.5) --返回2

floor(x)

返回小於或等於x的最大整數,select floor(1.5) -- 返回1

rand()

返回0->1的隨機數,select rand() --0.93099315644334

sign(x)

返回x的符號,x是負數、0、正數分別返回-1、0和1

pi()

返回圓周率(3.141593)

truncate(x,y)

返回數值x保留到小數點後y位的值

round(x)

返回離x最近的整數 ,select round(1.23456) --1

round(x,y)

保留x小數點後y位的值,但截斷時要進行四捨五入,select round(1.23456,3) -- 1.235

power(x,y)

返回x的y次方,select power(2,3) -- 8

sqrt(x)

返回x的平方根,,select sqrt(25) --5

exp(x)

返回e的x次方

mod(x,y)

返回x除以y以後的餘數,select mod(5,3) --2

函式說明

char_length(s)

返回字串s的字元數,select char_length('你好123') -- 5

length(s)

返回字串s的長度,select length('你好123') -- 9

concat(s1,s2)

將字串s1,s2等多個字串合併為乙個字串

concat_ws(x,s1,s2)

同concat(s1,s2,...)函式,但是每個字串直接要加上x

upper(s)

將字串s的所有字母變成大寫字母

lower(s)

將字串s的所有字母變成大寫字母

left(s,n)

返回字串s的前n個字元

right(s,n)

返回字串s的後n個字元

repeat(s,n)

將字串s重複n次

space(n)

返回n個空格

replace(s,s1,s2)

將字串s2替代字串s中的字串s1

strcmp(s1,s2)

比較s1,s2,返回的值為-1,0,1

substring(s,n,len)

獲取從字串s中的第n個位置開始長度為len的字串

reverse(s)

將s字串反轉

load_file(file_name)

讀入檔案並作為乙個字串返回檔案內容

函式說明

curdate()

返回當前時間的年月日

curtime()

返回當前時間的時分秒

now()

返回當前時間的日期和時間

month(d)

返回日期d中的月份值

monthname(d)

返回日期當中的月份名稱,如janyary

dayname(d)

返回日期d是星期幾,如monday,tuesday

dayofweek(d)

日期d今天是星期幾,1星期日,2星期一

from_unixtime(10位時間戳)

將unix時間戳轉換為2017-03-24 11:15:05的格式

unix_timestamp()

以unix時間戳的形式返回當前時間

week(d)

計算日期d是本年的第幾個星期,範圍是0->53

dayofmonth(d)

計算日期d是本月的第幾天

dayofyear(d)

計算日期d是本年的第幾天

quarter(d)

返回日期d是第幾季節,返回1->4

hour(d)

返回d中的小時值

minute(d)

返回d中的分鐘值

second(d)

返回d中的秒鐘值

datediff(d1,d2)

計算日期d1->d2之間相隔的天數

adddate(d,n)

計算日期d加上n天的日期

subdate(d,n)

日期d減去n天後的日期

函式說明

if(expr,v1,v2)

select if(1 > 0,'正確','錯誤')

ifnull(v1,v2)

如果v1的值不為null,則返回v1,否則返回v2。

case語法:

第一種,case表示函式開始,end表示函式結束。如果e1成立,則返回v1,如果e2成立,則返回v2,當全部不成立則返回vn,而當有乙個成立之後,後面的就不執行了

case 

when e1

then v1

when e2

then e2

...else vn

end

第二種,如果表示式expr的值等於e1,返回v1;如果等於e2,則返回e2。否則返回vn。

case expr 

when e1 then v1

when e1 then v1

...else vn

end

函式

說明version

返回資料庫的版本號

connection_id()

返回伺服器的連線數

user()

返回當前使用者

last_insert_id()

返回最近生成的auto_increment值

函式說明

password(str)

對str字串進行加密

md5(str)

md5(str)函式可以對字串str進行雜湊,可以用於一些普通的不需要解密的資料加密

sha(str)

sha加密

sha1(str)

sha1加密

encode(str,key)和decode(str,key)

使用key作為金鑰加密解密字串str,這兩函式是一對的,,加密和解密,非常值得注意的是對應欄位用blob型別

函式說明

convert(s using utf8)

將s字串轉換成utf8

from: 

MySql數字函式大全

mysql數字函式大全 abs n 返回n的絕對值 www.2cto.com mysql select abs 2 2 mysql select abs 32 32 sign n 返回引數的符號 為 1 0或1 mysql select sign 32 1 mysql select sign 0 0...

mysql日期函式,時間函式大全

獲得當前日期函式 date now 獲得當前時間函式 time now 獲得當前日期 時間 date time 函式 sysdate mysql 獲得當前時間戳函式 current timestamp,current timestamp 把日期時間轉化為字串格式 date format date,f...

MySQL日期時間函式大全

mysql日期格式化 format 取值範圍。值含義 秒 s s 兩位數字形式的秒 00,01,59 分 i i 兩位數字形式的分 00,01,59 小時 h 24小時制,兩位數形式小時 00,01,23 h12小時制,兩位數形式小時 00,01,12 k24小時制,數形式小時 0,1,23 l12...