MySQL 学习<五> MySQL函数简介(条件判断函数、系统信息函数、其他常见函数函数)

来源:互联网 发布:oppo手机的mac地址 编辑:程序博客网 时间:2024/06/05 00:35

条件判断函数

条件判断函数也称流程控制函数,根据满足的条件不同,执行相应的流程。有IF、IFNULL、和CASE等。

IF函数

IF(expr,v1,v2)如果表达式expr是TRUE,则IF()的返回值为v1,否则返回v2。

IFNULL函数

IFNULL(v1,v2)假如v1不为NULL,则函数返回值为v1,否则其返回值为v2。

CASE函数

语法:CASE expr WHEN v1 THEN r1  [WHEN v2 THEN r2]   [ELSE rn] END
如果expr值等于某个vn,则返回对应位置THEN后面的结果;否则返回ELSE后面的rn值。


系统信息函数


获取MySQL版本号、连接数和数据库名的函数

VERSION()返回MySQL服务器的版本信息;
CONNECTION_ID()返回MySQL服务器当前连接的次数,每个连接都有各自唯一的ID;
PROCESSLIST命令输出当前用户的连接信息;
DATABASE()和SCHEMA()函数返回当前的数据库名称。

获取用户名的函数

USER()、SYSTEM_USER()、SESSION_USER()、CURRENT_USER()返回当前用户。

获取字符串的字符集和排序方式的函数

CHARSET(str)返回字符串str的字符集;

COLLATION(str)返回字符串str的字符排列方式。


获取最后一个自动生成的ID值的函数

LAST_INSERT_ID()返回最后生成的AUTO_INCREMENT值;
这里注意一点是:
一次插入一条记录时返回值为最后一条插入值的ID值;




一次插入多行时返回的是插入第一行数据时产生的值。





加密函数

加密函数主要用来对数据进行加密和界面处理,以保证某些重要数据不被别人获取,

PASSWORD(str)返回原明文密码加密后的密码字符串;
MD5(str)返回一个MD5 128 比特校验和,该值以32位十六进制数字的二进制字符串形式返回,若参数为NULL,则返回NULL。
ENCODE(str,pswd_str)使用pswd_str作为密码,加密str;使用DECODE(crypt_str,pswd_str)使用pswd_str作为密码,解密加密字符串crypt_str.



其他常见函数


格式化函数

FORMAT(x,n)将数字x格式化,并四舍五入保留小数点后n位;

进制转换函数

CONV(n,from_base,to_base)将n由from_base进制转换为to_base进制;

IP地址与数字互换函数

INET_ATON(expr)将IP地址转换为数值网络地址,计算方法为:114*256^3  + 114*256^2  + 10*256  + 0

INET_NTOA(expr)将数值网络地址转化为字符串网络地址。



加、解锁函数

GET_LOCK(str,timeout)使用字符串str给定的名字得到一个锁,超时未timeout秒;成功返回1,超时返回0,发生错误返回NULL;
RELEASE_LOCK(str)解开被GET_LOCK()获取的锁;
IS_FREE_LOCK(str)检查名为str的锁是否可用;
IS_USED_LOCK(str)检查名为str的锁是否正在用(被封锁)。

重复执行函数

BENCHMARK(count,expr)函数重复count次执行表达式expr。

改变字符集函数

CONVERT(...USING...)带有USING的CONVERT()函数用来在不同字符集之间转换数据。


改变数据类型函数

CAST(x,AS type)和CONVERT(x,type)函数将一个类型的值转换为另一个类型的值;可转换的type有:BINARY、CHAR(n)、DATE、TIME、DATETIME、DECIMAL、SIGNED、UNSIGNED。



原创粉丝点击