MySQL常用函式

2021-09-28 04:59:05 字數 2888 閱讀 7822

一、字串函式

函式功能

concat(str1,str2,...)

字串連線,連線目標個數不限

insert(str,x,y,instr)

將字串str從第x位置開始,y個字元長的子串替換為字串instr 

lower(str)

轉小寫upper(str)

轉大寫left(str,x)

返回字串str最左邊的x個字元

right(str,x)

返回字串str最右邊的x個字元

lpad(str,n,pad)

用字串pad對str最左邊進行填充,直到長度為n個字元長度

rpad(str,n,pad)

用字串pad對str最右邊進行填充,直到長度為n個字元長度

ltrim(str)

去除字串str左邊的空格

rtrim(str)

去除字串str右邊的空格

trim(str)

去除字串兩邊的空格

repeat(str,x)

返回str重複x次的結果

replace(str,a,b)

把字串str中所有的a替換成b

strcmp(str1,str2)

比較兩個字串,大於為1 小於為-1 等於為0

substring(str,x,y)

返回str字串從x開始y個長度的字串

二、數值函式

函式功能

abs(x)

返回x的絕對值

ceil(x)

返回大於x的最小整數值

floor(x)

返回大於x的最大整數值

mod(x,y)

返回x/y的模

rand()

返回0 - 1之間的隨機數

round(x,y)

返回x的四捨五入保留y位小數的結果

truncate(x,y)

返回數字x截斷為y位小數的結果

三、時間日期函式

函式功能

now()

返回當前日期和時間

curdate()

返回當前日期

curtime()

返回當前時間

unix_timestamp(date)

返回date的時間戳

from_unixtime(time)

返回時間戳的data值

week(date)

返回日期date為一年中的第幾周

year(date)

返回日期date的年份

hour(time)

返回time的小時值

minute(time)

返回time的分鐘值

monthname(date)

返回date的月份名稱 英文名

date_format(date,fmt)

返回按字串fmt格式化日期date值

datediff(expr,expr2)

返回起始時間和結束時間之間的天數

這個函式 date_format(date,fmt)  其中的fmt 可以使用的格式符如下表

格式符格式說明

%s和%s

兩位數字形式的秒

%i兩位數字形式的分

%h兩位數字形式的小時 24小時制

%h和%i

兩位數字形式的小時 12小時制

%t24小時的時間形式 14:19:41

%d兩位數字表示天

%m兩位數字表示的月份

%y四位數字表示的年份

%y兩位數字表示的年份

-- 格式化當前時間

select date_format(now(),'%y-%m-%d %h:%i:%s')

-- 2018-10-25 14:26:01

-- 現在到過年還有多少天

select datediff('2019-02-05',now())

-- 103

四、流程函式

函式功能

if(value,a,b)

如果value是真,那麼返回a,否則返回b

ifnull(value1,value2)

如果value1是null,那麼返回value2,否則返回value1本身

case when [value] then [result1] ... else [default_value] end

如果value是真,返回result1,【可以跟上多個when-then匹配】否則返回default_value

case [value] when [a1] then [result1] ... else [default_value] end

匹配value的值,如果等於a1,那麼返回result1,也可以跟上多個匹配,否則default_value

select case 10 when 9 then "這是9" when 10 then "這是10" else "全錯" end

-- 這是10

select case when 10>12 then "10>12對" when 10>9 then "10>9對" else "全錯" end

-- 10>9對

六、其他函式

函式功能

database()

返回當前資料庫名

version()

返回當前資料庫版本

user()

返回當前登入使用者名稱

inet_aton(ip)

返回ip位址的數字表示

inet_ntoa(num)

返回數字代表的ip位址

password(str)

返回字串str的加密版本

md5(str)

返回字串的md5值

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