mysql版本函式 字元 MySQL常用函式

2021-10-18 11:42:30 字數 3416 閱讀 6763

mysql常用函式

數學函式:

abs(x):返回x的絕對值

mod(n,m)或%:返回n被m除的餘數

floor(x):返回不大於x的最大整數值

ceiling(x):返回不小於x的最小整數值

round(x) :對引數x四捨五入

字串函式:下標從1開始

ascii(str):返回字串str的最左面字元的ascii**值。如果str是空字串,返回0。如果str是null,返回null

concat(str1,str2,...):返回來自於引數鏈結的字串。如果任何引數是null,返回null。數字引數被變換為等價的字串形式

concat_ws(separator,str1,str2...)以字串separator為分隔符,合併多個字串

length(str):返回字串str的長度

locate(substr,str):返回子串substr在字串str第乙個出現的位置,如果substr不是在str裡面,返回0

instr(str,substr):返回子串substr在字串str中的第乙個出現的位置,與locate類似

left(str,len):返回字串str的最左面len個字元

right(str,len):返回字串str的最右面len個字元

substring(str,pos):從字串str的第pos個字元開始,返回乙個子串

trim(str):返回字串str,去除前後空格

ltrim(str):返回字串str,去除前置空格

rtrim(str):返回字串str,去除後置空格

replace(str,old,new):返回字串str,其字串old的所有出現由字串new代替

repeat(str,count):返回由重複counttimes次的字串str組成的乙個字串。如果count <= 0,返回乙個空字串。如果str或count是null,返回null

reverse(str):顛倒字元順序

insert(str,from,len,newstr):返回字串str,從第from個字元開始的len個字元由字串newstr代替

日期和時間函式:

dayofweek(date):返回日期date的星期索引(1-7)

weekday(date):返回date的星期索引(0-6)

dayofmonth(date):返回date的月份中的日期(1-31)

dayofyear(date):返回date在一年中的日數(1-366)

month(date):返回date的月份(1-12)

dayname(date):返回date的星期幾的英文(monday-sunday)

monthname(date) :返回date的月份英文(january-december)

quarter(date):返回date一年中的季度(1-4)

week(date,first):返回date的週數(0-52),只有乙個引數則預設第二個引數為0,0代表星期天是一周的第一天,1代表周一是一周的第一天

year(date):返回date的年份(1000-9999)

hour(time):返回time的小時(0-23)

minute(time):返回time的分鐘(0-59)

second(time):回來time的秒數(0-59)

date_sub(date,interval expr type) ,進行日期減少的操作,可以精確到秒

curdate():以『yyyy-mm-dd』或yyyymmdd格式返回今天日期值,取決於函式在乙個字串還是數字上下文被使用

curtime():以『hh:mm:ss』或hhmmss格式返回當前時間值

now():以『yyyy-mm-dd hh:mm:ss』或yyyymmddhhmmss格式返回當前的日期和時間

控制流程函式 :

case value when value1 then result1 (when value2 then result2...) else result end

已end結尾,如果沒有else 部分且when後條件都不成立,則返回值為 null

if(expr1,expr2,expr3)

如果 expr1 是true (expr1 不為 0 且 不為 null),則 if()的返回值為expr2; 否則返回值則為 expr3

strcmp(str1,str2)

如果str1>str2返回1,str1=str2反回0,str1

如果字串相同,strcmp()返回0,如果第一引數根據當前的排序次序小於第二個,返回-1,否則返回1

系統資訊函式:

version()函式返回資料庫的版本號

connection_id()函式返回伺服器的連線數,也就是到現在為止mysql服務的連線次數

database()和schema()返回當前資料庫名

user()、system_user()、session_user()、current_user()這幾個函式可以返回當前使用者的名稱

charset(str)函式返回字串str的字符集,一般情況這個字符集就是系統的預設字符集

collation(str)函式返回字串str的字元排列方式

last_insert_id()函式返回最後生成的auto_increment(自增長id)值

加密函式:

password(str)函式可以對字串str進行加密,一般用來加密使用者密碼

md5(str)函式可以對字串str進行加密,主要對普通的資料進行加密

encode(str,pswd_str)函式可以使用字串pswd_str來加密字串str。加密的結果是乙個二進位制數,必須使用blog型別的字段來儲存它

decode(crypt_str,pswd_str)函式可以使用字串pswd_str來為crypt_str解密。crypt_str是通過encode(str,pswd_str)加密後的二進位制資料,

其它函式:

format(x,n)函式可以將數字x進行格式化,將x保留到小數點後n位,(必要的時候會進行四捨五入)

ascii(s)返回字串s的第乙個字元的ascii碼

bin(x)返回x的二進位制編碼

hex(x)返回x的十六進製制編碼

oct(x)返回x的八進位制編碼

conv(x,f1,f2)將x從f1進製數變成f2進製數

inet_aton(ip)函式可以將ip位址轉換為數字表示,ip值需要加上引號

inet_ntoa(n)函式可以將數字n轉換成ip的形式

benchmark(count,expr)函式將表示式expr重複執行count次,然後返回執行時間。該函式可以用來判斷mysql處理表示式的速度

convert(s using cs)、cast(x as type)函式將字串s的字符集變成cs

to_days(expr)將日期***x-xx-xx/xx-xx-xx轉化為天數

mysql版本函式 字元 MySQL之字元函式

mysql中提供一些函式對我們的開發有很多的幫助,下面就把mysql提供的一些常用函式整理下,首先是字元處理函式 1.concat 用法 字串鏈結函式,將字串字段鏈結在一塊 舉例 select concat mysql functioin test asian 結果 concat mysql fun...

MySQL函式 字元函式

最近專案中的需求經常會使用到對查詢到的字串進行處理,所以就整理了一下mysql中經常會用到的字元函式。函式名稱 作用concat 字串的拼接 concat ws 使用指定的字元將目標字串進行拼接 format 數字格式化 lower 字串全部轉換為小寫 upper 字串全部轉換為大寫 left 獲取...

mysql函式(字元)

四.常見函式 呼叫 select 函式名 實參列表 from表 分類 單行函式 concat length ifnull等 字元函式 數學函式 日期函式 其他函式 流程控制函式 多行函式 做統計使用,又稱統計函式,聚合函式,組函式 1.字元函式 length select length john c...