一、字符串函数 (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‘);
原文地址:http://8448262.blog.51cto.com/8438262/1407132