当前位置:   article > 正文

MySQL内置函数_查看mysql函数

查看mysql函数

一、日期函数

1.函数总览

函数名称描述
current_date()当前日期
current_time()当前时间
current_timestamp当前时间戳
date(datetime)返回datetime参数的日期部分
date_add(date,interval d_value_type)在date中添加日期和时间interval后的数值单位可以是year minute second day
date_sub(date,interval d_value_type)在date中减去日期或时间interval后的数值单位可以是year minute second day
datediff(date1,date2)两个日期的差,单位是天
now()当前日期时间

2.应用

mysql> select current_date();//查看当前日期
mysql> select current_time();//查看当前时间
mysql> select current_timestamp;//查看时间戳,即日期+时间
mysql> select date_add('1995-2-2',interval 20 day);//增加20天
mysql> select date_sub('2022-10-1',interval 2 day);//减少2天
mysql> select datediff('2022-10-3','2002-6-1');//计算时间差,前一个减后一个
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

创建一个生日表:

mysql> create table birthday( id int primary key auto_increment, birthday date );
insert into birthday (birthday) values(current_date());//插入当前日期
  • 1
  • 2

在这里插入图片描述
创建一个留言表:

mysql> create table msg(
    -> id int primary key auto_increment,
    -> content varchar(30) not null,
    -> sendtime datetime
    -> );
mysql> insert into msg (content,sendtime) values('AA','2022-10-9');
mysql> insert into msg (content,sendtime) values('AA',current_timestamp());
mysql> insert into msg (content,sendtime) values('AA',now());
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

对于datetime类型有三种插入方式,一种是手动插入,一种是使用时间戳进行插入,一种是使用now()函数进行插入。
在这里插入图片描述

二、字符串函数

1.函数总览

函数名称描述
charset(str)返回字符串字符集
concat(string2 [,…])连接字符串
instr(string,substring)返回substring在string中出现的位置,没有返回0
ucase(string2)转换成大写
lcase(string2)转换成小写
left(string2,length)从string2中的左起取length个字符
length(string)string的长度(字节)
replace(str,search_str,replace_str)在str中用replace_str替换search_str
strcmp(string1,string2)逐字符比较两字符串的大小
substring(str,position [,length])从str的position开始,取length个字符
ltrim(string) rtrim(string) trim(string)去除前空格或后空格

2.应用

我们使用oracle 9i的表来进行演示:

mysql> select charset(ename) from emp;//显示雇员名称所属的字符集
  • 1

在这里插入图片描述

mysql> select concat('雇员名字:',ename,'工作:',job) as '雇员管理' from emp;//将字符串进行拼接
  • 1

在这里插入图片描述

mysql> select length(ename) from emp;//显示名字字节数
mysql> select replace(ename,'S','伤害'),ename from emp;//将名字中所有的S替换成伤害。
  • 1
  • 2

在这里插入图片描述

mysql> select substring(ename,2,2),ename from emp;//从第二个字符开始,截取两个字符
  • 1

在这里插入图片描述

mysql> select concat(lcase(substring(ename,1,1)),substring(ename,2)) ename from emp;//以首字符小写的形式显示所有名字
  • 1

思路是通过substring函数先将字符串中第一个字符截取出来,使用lcase进行处理之后,再与剩余的部分进行拼接。
在这里插入图片描述

mysql> select ltrim("    abec");//删除左空格
mysql> select rtrim("abec    ");//删除右空格
mysql> select trim("      abec    ");//删除两侧空格
  • 1
  • 2
  • 3

在这里插入图片描述

三、数学函数

1.函数总览

函数名称描述
abs(number)绝对值函数
bin(decimal_number)十进制转换二进制
hex(decimalNumber)转换成十六进制
conv(number,from_base,to_base)进制转换
ceiling(number)向上取整
floor(number)向下取整
format(number,decimal_places)格式化,保留小数点位数
hex(decimalNumber)转换成十六进制
rand()返回随机浮点数,范围[0.0,1.0)
mod(number,denominator)取模,求余

2.应用

mysql> select abs(-100.3);//取绝对值
mysql> select ceiling(8.8);//9
mysql> select ceiling(8.1);//9
mysql> select ceiling(-8.1);//-8
mysql> select ceiling(-8.9);//-8
  • 1
  • 2
  • 3
  • 4
  • 5

向上取整函数的上,表示的是正无穷方向的上。
在这里插入图片描述
向下取整同理,下指的是负无穷的方向。

mysql> select format(3.1415926,4);//保留四位小数
mysql> select rand();//产生随机数,可以是小数
  • 1
  • 2

在这里插入图片描述

四、其他函数

1.函数总览(待补充)

函数名称描述
user()当前用户
md5(str)对一个字符串进行摘要(加密使用)
database()显示正在使用的数据库
password()加密与md5类似
ifnull(val1,val2)如果val1为null,返回val2,否则返回val1的值

2.应用

mysql> select user();
mysql> select database();
  • 1
  • 2

在这里插入图片描述

mysql> select md5('admin');
mysql> select password('admin');
  • 1
  • 2

在这里插入图片描述
通常来讲在服务器中存储的密码是以这种加密方式存储的。

mysql> select ifnull(null,'123');//第一个为null返回第二个的值
mysql> select ifnull('1234','123');//第一个不为null返回第一个的值
mysql> select ifnull(null,null);//两个都为null返回null
  • 1
  • 2
  • 3

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/612443
推荐阅读
相关标签
  

闽ICP备14008679号