=======================================================html
該函數會將傳入的參數鏈接起來返回合併的字符串類型的數據。sql
若是其中一個參數爲null,則返回值爲null。數據庫
示例1:select concat ('huang','lao','shi'), concat('huang','lao','shi',null)
-- 直接輸出語句中的字符串
session
示例2:select concat(curdate(),12.2);
函數
select concat (name, "|", house_location) from houses;
本函數與concat()的區別:多了一個表示分隔符的seq參數,不只將傳入的其餘參數鏈接起來,並且會經過分隔符將各個字符串分隔開來。學習
分隔符能夠是一個字符,也能夠是其餘參數。若是分隔符爲null,則返回結果爲null。函數會忽略任何分隔符後的參數null。code
示例1:select concat_ws('-','020','8331234567');
orm
示例2:select concat_ws('-','020','8331234567');
-- 鏈接多個字符串
htm
示例3:select concat_ws('null','020','8331234567'), concat_ws('-','020','null','8331234567');
-- null的處理
blog
=======================================================
獲取字符串長度函數:length()
獲取字符數函數:char_length()
length(str):一個漢字算3個字符,一個數字或字母算一個字符。
char_length(str):無論是漢字仍是數字或字母,都算一個字符。
示例1:對比漢字和字母數字的不一樣結果
示例2:數字的結果對比
示例3:對負數的處理。注:ceil(n) 取大於等於數值n的最小整數;
strcmp(str1, str2)
str1>str2
,則返回1;若是str1<str2
,則返回-1;若是str1==str2
,則返回0。示例1:等長,且相同大小寫的字母比較
示例2:相同字母的大小寫比較
示例3:不等長的字母比較
示例4:單個數字比較
示例5:不等長的數字比較
示例6:單箇中文字符比較
=======================================================
upper(s)
ucase(s)
lower(s)
lcase(s)
=======================================================
若是n超過了字符串個數的範圍,(大於或小於),則返回null;
對於空格:任意位置的空格(前面的空格或者後面的空格)都算在返回結果內,不會自動刪除。
=======================================================
返回字符串str中包含前num個字母(從左邊數)、(從右邊數)的字符串,並按照原順序返回結果。
參數num超出正常範圍時:返回空白,沒有null的空白那種。
=======================================================
=======================================================
select 函數名();
-- 來查看時間函數的返回值current_timestamp():獲取當前時間戳,包括年月日+時分秒。
current_date():獲取當前日期,包括年月日。
current_time():獲取當前時間,包括時分秒。
now():在語句執行開始時,值就獲得了,後面再取,值不變;
sysdate():在函數執行時動態獲得值,後面再取,值會變。
=======================================================
格式化數字:format(x,y):把x格式化爲以逗號隔開的數字序列,y是結果的小數位數。
格式化時間:date_format(date,fmt), time_format(time,fmt) :
'%+字母+分隔符+%+字母+分隔符+...'
=======================================================
一、格式:select + 函數名(參數名)
二、配合group by
進行分組,注意字段有重複元素和無重複元素獲得的結果的不一樣。
=======================================================
SELECT IF(1<10, 2, 3);
-- 輸出:2
switch-case
裏的每一個case,能夠組合爲when...when....when...else
;注意else別放在when中間。
=======================================================
返回數據庫版本號:version()
返回當前數據庫名:database()
返回當前用戶名:user()
, system_user()
, session_user()
, current_user()