一步一步学MySQL---18 MySQL常用函数(4)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u013003827/article/details/72731505

18.4.1 系统信息函数

MySQL支持的常用系统信息函数有:

函数 作用
VERSION() 返回数据库的版本号
DATABASE() 返回当前数据库
USER() 返回当前用户
LAST_INSERT_ID() 返回最近生成的AUTO_INCREMENT值

(1) 获取MySQL系统信息

mysql> select version() 版本号,
-> DATABASE() 数据库名,
-> USER() 用户名;

这里写图片描述

(2) 获取AUTO_INCREMENT约束的最后ID值

在MySQL中经常会设置一个名为ID的字段,同时还会设置该字段为主键和自动增长(AUTO_INCREMENT)约束。在具体应用中,由于主键ID的值由MySQL软件来控制而不是用户来输入,所以有时候需要查看最后生成的具有AUTO_INCREMENT约束字段的值。

为了实现上述功能,MySQL专门提供了LAST_INSERT_ID()函数。

第一步:创建一个表autoincrement

mysql> create table autoincrement(ID INT(11) NOT NULL AUTO_INCREMENT UNIQUE);

说明:创建了一个autoincrement表,该表只有一个字段ID,并且字段ID为主键并具有自动增加的约束。
这里写图片描述

第二步:向autoincrement表中插入4条测试数据

mysql> insert into autoincrement values(NULL);
Query OK, 1 row affected (0.10 sec)

mysql> insert into autoincrement values(NULL);
Query OK, 1 row affected (0.10 sec)

mysql> insert into autoincrement values(NULL);
Query OK, 1 row affected (0.06 sec)

mysql> insert into autoincrement values(NULL);
Query OK, 1 row affected (0.05 sec)

第三步:执行SQL语句LAST_INSERT_ID()函数,获取自动增长最后生成的ID值

mysql> select LAST_INSERT_ID();

这里写图片描述

18.4.2 其他函数

MySQL除了提供之前提到的常见函数之外,还提供了许多其他函数,分别是流程函数和实现特殊功能的函数

MySQL支持的流程函数有:

函数 作用
IF(value,t f) 如果value为真,则返回t,否则返回f
IFNULL(value1,value2) 如果value1不为空则返回value1,否则返回value2
CASE WHEN [value1] THEN [result1] … ELSE [default] 如果value1为真,则返回result1,否则返回default
CASE [expr] WHEN [value1] THEN [result1]… ELSE [default] 如果expr等于value1,则返回result1,否则返回default

MySQL支持的实现特殊功能的函数有:

函数 作用
PASSWORD(str) 实现对字符串str进行加密
FORMAT(x,n) 实现将数字x进行格式化,保留n位小数
INET_ATON(ip) 实现将ip地址转换成数字
INET_NTOA(ip) 实现将数字转换成IP
GET_LOCT(name,time) 创建一个持续时间time的名为name的锁
RELEASE_LOCT(name) 为名为name的锁进行解锁
BENCHMARK(count,expr) 实现将表达式重复执行count次
CONVERT(s USING cs) 实现将字符串s的字符集变成cs
CONVERT(x,type) 实现将x变成type类型

猜你喜欢

转载自blog.csdn.net/u013003827/article/details/72731505