一、字符串函數 (1)、計算字符串個數 語法:char_length(string) 例子:select char_length(user_name) from gonda; (2)、計算字節長度 語法:length(string) 例子:select length(name) from student; (3)、合併字符串函數 語法:concat(s1,s2) 默認不定義分割符號 舉例:select concat(user_id,user_name) from gonda; 語法:concat_ws('-',s1,s2)定義分割符-之後,自動分割 舉例:select concat_ws('-',user_id,user_name,old) from gonda; (4)、替換字符串函數 語法:insert(s,2,4'fang') 將s字段中2後的4個字符,其中含了第二字符本身,用fang替換 舉例:select order_num,insert(order_num,2,4,'aa') from orders; (5)、將字符大小寫轉換 將小寫轉換成大寫 語法:upper(s) > select user_name,upper(user_name) from gonda; 語法:ucase(s) > select user_name,ucase(user_name),lower(user_name) from gonda; 將大寫轉換稱小寫 語法:lower(s) > select vend_state,lower(vend_state) from vendors; 語法:lcase(s) > select vend_state,lcase(vend_state) from vendors; 二、時間日期函數 (1)、返回當前日期 語法:curdate() > select vend_name,curdate() from vendors; (2)、返回當前日期和時間 語法:now() > select vend_name,now() from vendors; (3)、以Unix時間戳形式返回當前時間 語法:unix_timestam(s) > select unix_timestamp(order_date) from orders; (4)、將Unix時間戳轉換稱普通的時間格式 語法:from_unixtime(s) > select from_unixtime(old) from gonda where user_id='2222'; 三、條件判斷函數 (1)、if(expr,v1,v2)函數, 如果表達式expr成立,則返回v1,否則返回v2 > select order_num,order_date,if(order_num < 20005,'yes','no') from orders; (2)、ifnull(s1,v2)函數 如果s1字段值不爲空,就返回s1的值,否則返回v2的值 > select vend_id,ifnull(vend_state,'kong') from vendors; (3)、case函數 語法:case when 表達式1 then '返回值1' when 表達式2 then '返回值2' else '返回值3' end 承載返回值模擬字段名稱 > select cust_id,order_num,case when order_num >=20008 then 'yes' when cust_id >=10004 then 'yes2' else 'fail..' end myname from orders; order_nu>=20008 或者cust_id >=10004 只要滿足其中一個 滿足前者則返回yes 滿足後者顯示yes2,否則就顯示Fail.. 四、系統信息函數 (1)、返回數據庫版本號 version() > select version(); (2)、返回服務器的連接數 connection_id() > select connection_id(); (3)、返回當前數據庫名 database() > select database(); (4)、返回當前用戶名 user() > select user(); 五、加密函數 (1)、password()普通加密函數,此函數經常用來給mysql用戶加密,在mysql裏面用戶是不能存儲明文密碼的. > select password('gongda'); (2)、md5(string) 加密 > select md5('gongda'); (3)、encode(str,passd_str) 函數可可以使用字串pass_str 來加密str ,加密的結果是一個二進制數, 必須使用blob類型字段來保存它 mysql> insert into aa values(encode('myname','aa')); Query OK, 1 row affected (0.00 sec) (4)、decode(str,passd_str)函數來解密encode加密的內容 > select decode(encode('myname','aa'),'aa');
mysql函數
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.