Mysql 常用函式

2022-09-14 03:33:12 字數 3109 閱讀 3872

開發過程中常用的mysql函式:

函式作用

示例返回值數學

函式rand()

返回0->1的隨機數

select rand()

0.93099315644334

rand()

返回0->x的隨機數

select rand(2)

1.5865798029924

sqrt(x)

返回x的平方根

select sqrt(25)

5mod(x,y)

返回x除以y以後的餘數

select mod(5,2)

1radians(x)

將角度轉換為弧度

select radians(180)

3.1415926535898

degrees(x)

將弧度轉換為角度

select degrees(3.1415926535898)

180sin(x)

求正弦值(引數是弧度)

select sin(radians(30))

0.5asin(x)

求反正弦值(引數是弧度)

cos(x)

求余弦值(引數是弧度)

acos(x)

求反余弦值(引數是弧度)

tan(x)

求正切值(引數是弧度)

求反正切值(引數是弧度)

cot(x)

求餘切值(引數是弧度)字元

串函式concat(s1,s2,...)

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

select concat('12','34')

1234

concat_ws(x,s1,s2,...)

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

select concat_ws('@','12','34')

12@34

upper(s),ucaase(s)

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

abclower(s),lcase(s)

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

select lower('abc')

abcleft(s,n)

返回字串s的前n個字元

select left('abcde',2)

abright(s,n)

返回字串s的後n個字元

select right('abcde',2)

deltrim(s)

去掉字串s開始處的空格

rtrim(s)

去掉字串s結尾處的空格

trim(s)

去掉字串s開始和結尾處的空格

trim(s1 from s)

去掉字串s中開始處和結尾處的字串s1

select trim('@' from '@@abc@@')

abcrepeat(s,n)

將字串s重複n次

select repeat('ab',3)

ababab

replace(s,s1,s2)

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

select replace('abc','a','x')

xbcsubstring(s,n,len)

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

reverse(s)

將字串s的順序反過來

select reverse('abc')

cbasubstring_index

返回從字串str的第count個出現的分隔符delim之後的子串。

如果count是正數,返回第count個字元左邊的字串。

如果count是負數,返回第(count的絕對值(從右邊數))個字元右邊的字串。

select substring_index('a*b','*',1) 

select substring_index('a*b','*',-1) ab

時間日期

函式curdate(),current_date()

返回當前日期

select curdate()

2014-12-17

curtime(),current_time

返回當前時間

select curtime()

15:59:02

now(),current_timestamp(),localtime(),

sysdate(),localtimestamp()

返回當前日期和時間

select now()

2014-12-17 15:59:02

date_format(d,f)

按表示式f的要求顯示日期d

select date_format('2011-11-11 11:11:11','%y-%m-%d %r')

2011-11-11 11:11:11 am條件

判斷函式

if(expr,v1,v2)

如果表示式expr成立,返回結果v1;否則,返回結果v2

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

正確ifnull(v1,v2)

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

select ifnull(null,'hello word')

hello word

case  

when e1   then v1

when e2   then e2

...else vn

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

case  expr

when e1   then v1

when e2   then e2

...else vn

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

轉換資料型別

cast(x as type)

convert(x,type)

只對binary、char、date、datetime、time、signed integer、unsigned integer

mysql 常用函式迴圈 mysql 常用函式

mysql 常用函式 數字函式 ceiling x 返回大於x的最小整數值 floor x 返回小於x的最大整數值 truncate x,y 返回數字x截短為y位小數的結果 僅僅只是截斷,不會進行四捨五入計算 聚合函式 group concat col 返回由屬於一組的列值連線組合而成的結果 字串函...

mysql常用函式哪些 MySQL常用函式彙總

數學類函式 ceil x ceilin x 進一取整 floor x 捨掉小數部分 round x,y 四捨五入 保留y位小數 mod x,y x除以y以後的餘數 abs x 取x的絕對值 power x,y pow x,y 冪運算 x的y次冪 pi 圓周率 rand 或者rand x 0 1之間的...

mysql常用轉換函式 Mysql常用函式

ip位址轉換 inet aton 將ip位址轉換成數字型 inet ntoa 將數字型轉換成ip位址 phpip位址相互轉換 ip 轉整型 ip2long 133.114.56.135 轉整型後帶符號 2056111993 bindec decbin ip2long 133.114.56.135 轉...