mysql函数

一、字符串函数

(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个字符,其中包含了第2个字符本身,用fang替换

举例:

select order_num,insert(order_num,2,4,’aa’) from orders;

(5)、将字符大小写转换
将小写转换成大写

语法:upper(string)

select user_name,upper(user_name) from gonda;

语法:ucase(string)

select user_name,ucase(user_name),lower(user_name) from gonda;

将大写转换称小写

语法:lower(string)

select vend_state,lower(vend_state) from vendors;

语法:lcase(string)

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(string)

select unix_timestamp(order_date) from orders;

(4)、将Unix时间戳转换称普通的时间格式

语法:from_unixtime(string)

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,s2)**函数

如果s1字段值为空,就返回s2,否则返回s2本身的值

如果s1字段值不为空,就返回s1本身的值,否则返回s2的值

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_num>=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(string)**普通加密函数,此函数经常用来给mysql用户加密,在mysql里面用户是不能存储明文密码的.

select password(‘gongda’);

(2)、md5(string) 加密

select md5(‘gongda’);

(3)、encode(str,passd_str) 函数可以使用字串pass_str 来加密str ,加密的结果是一个二进制数,必须使用blob类型字段来保存它

insert into aa values(encode(‘myname’,’aa’));

——用aa来加密内容myname

(4)、**decode(str,passd_str)**函数来解密encode加密的内容

select decode(encode(‘myname’,’aa’),’aa’);```
——–用aa来解密

mysql函数
http://www.jcwit.com/article/23/
作者
Carlos
发布于
2019年4月2日
许可协议