Mysql使用函數:
文本處理函數
RTrim()函數來去除列值右邊的空格。
Upper()函數將文本轉換爲大寫。select vend_name, Upper(vend_name) as vend_name_upcase from vendors;
函數 | 說明 |
---|---|
Left() | 返回串左邊的字符 |
Length() | 返回串的長度 |
Locate() | 找出一個子串 |
Lower() | 將串轉換爲小寫 |
LTrim() | 去除左邊的空格 |
Reight() | 返回串右邊的字符 |
RTrim() | 去掉串右邊的空格 |
Soundex() | 返回串的SOUNDEX值 |
SubString() | 返回子串的字符 |
Upper() | 將串轉換爲大寫 |
匹配所有的發音類似於Y.Lie的聯繫名:
select cust_name,cust_contact from customers where Soundex(cust_contact) = Soundex(‘Y Lie’);
日期處理函數
函數 | 說明 |
---|---|
AddDate() | 增加一個日期(天,周) |
AddTime() | 增加一個時間 |
CurDate() | 返回當前的日期 |
CurTime() | 返回當前時間 |
Date() | 返回日期時間的日期部分 |
DateDiff(date1,date2) | 計算兩個日期差 |
Date_Add(date, INTERVAL expr type) | 高度靈活的計算函數 |
Date_Format(date,format) | 返回一個格式化的日期或時間串 |
Day(date) | 返回一個日期的天數部分 |
DayOfWeek(date) | 對於一個日期返回周幾 |
Hour(date) | 返回一個時間的小時部分 |
Minute(date) | 返回一個時間的分鐘部分 |
Month(‘2020-03-01’) | 返回一個日期的月份 |
Now() | 返回當前日期和時間 |
Second(date) | 返回一個時間的秒部分 |
Time(date) | 返回一個日期時間部分 |
Year(date) | 返回一個日期的年份 |
數值處理函數
函數 | 說明 |
---|---|
Abs() | 返回一個數的絕對值 |
Cos() | 返回一個角度的餘弦 |
Exp() | 返回一個數的指數值 |
Mod() | 返回操作的餘數 |
Pi() | 返回圓周率 |
Rand() | 返回一個隨機數 |
Sin() | 返回一個角度的正弦 |
Sqrt() | 返回一個數的平方根 |
Tan() | 返回一個角度的正切 |
數據轉換函數
cast函數:
MySQL 的CAST()和CONVERT()函數可用來獲取一個類型的值,併產生另一個類型的值。兩者具體的語法如下:
CAST(value as type);
CONVERT(value, type);
就是CAST(xxx AS 類型), CONVERT(xxx,類型)。
可以轉換的類型是有限制的。這個類型可以是以下值其中的一個:
二進制,同帶binary前綴的效果 : BINARY
字符型,可帶參數 : CHAR()
日期 : DATE
時間: TIME
日期時間型 : DATETIME
浮點數 : DECIMAL
整數 : SIGNED
無符號整數 : UNSIGNED
convert函數:
CONVERT(xxx,類型)。
CONVERT (‘2999-12-31’, datetime)
數據拼接函數
concat():
功能:將多個字符串連接成一個字符串。
語法:concat(str1, str2,…)
返回結果爲連接參數產生的字符串,如果有任何一個參數爲null,則返回值爲null。
concat_ws():
1、功能:和concat()一樣,將多個字符串連接成一個字符串,但是可以一次性指定分隔符~(concat_ws就是concat with separator)
2、語法:concat_ws(separator, str1, str2, …)
說明:第一個參數指定分隔符。需要注意的是分隔符不能爲null,如果爲null,則返回結果爲null。
其他函數
select ifnull("AASS",'');
1.isnull(exper) 判斷exper是否爲空,是則返回1,否則返回0
2.ifnull(exper1,exper2)判斷exper1是否爲空,是則用exper2代替
3.nullif(exper1,exper2)如果expr1= expr2 成立,那麼返回值爲NULL,否則返回值爲 expr1。