MySQL的函数

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8" />

<title>mysql函数</title>

</head>

<body>

<!-- Mysql函数 字符串函数

函数指的是一段可以直接被另一段程序调用的程序或代码

字符串函数

concat(s1,s1,s3):字符串拼接,将s1,s2,...,sn拼接成员工字符串

lower(str):将字符串str全部转为小写

upper(str):将字符串str全部转换为大写

lpad(str,n,pad):左填充,用字符串pad对str的左边进行填充,达到n个字符串长度

rpad(str,n,pad):有填充,用字符串pad对str的右边进行填充,达到n个字符串长度

trim(str):去掉字符串头部和尾部的空格

substring(str,start,len):放回从字符串str从start位置起的len个长度的字符串

select 函数(参数);

-->

<!-- 数值函数

ceil(x):向上取整

floor(x):向下取整

mod(x,y):返回x/y的模(就是余数)

rand():返回0~1内的随机数

round(x,y):求参数x的四舍五入的值,保留y位小数

例子:

通过数据库的函数,生成一个6位的随机验证码

select lpad((round(rand()*1000000),0),6,'0');

-->

<!-- 日期函数

curdate():返回当前日期

curtime():返回当前时间

now():返回当前日期和时间

year(date):获取指定date的年份

month(date):获取指定date的月份

day(date):获取指定date的日期

date_add(date,interval expr type):返回一个日期/时间值加上一个时间间隔expr后的时间值

datediff(date1,date2):返回起始时间date1和结束时间date2之间的天数

例如

date_add(now(),interval 70 year);

查询所有员工入职天数,并根据入职天数排序

select name,datediff(curdate(),enterdate)as 'enterdays' from yg order by enterdays desc;

-->

<!-- 流程控制函数

if(value,t,f):如果value位true,则返回t,否则返回f

ifnull(value1,value2):如果value1不为nall,返回value1,否则返回value2

case when [val1] then [res1]... else [default] end:如果val1位true,放回res1,...否则返回default默认值

case [expr] when [val1] then [res1] ... else [default] end:如果expr的值等于val1,返回res1,...否则返回default默认值

例子:查询yg表的员工姓名和工作地址(北京/广州 ->一线城市,其他就是二线)

select

name

case workaddress when '北京' then '一线城市' when '上海' then '一线城市' else '二线城市' end

from yg;

-->

</body>

</html>

相关推荐
打鱼又晒网5 分钟前
【MySQL】数据库精细化讲解:内置函数知识穿透与深度学习解析
数据库·mysql
大白要努力!10 分钟前
android 使用SQLiteOpenHelper 如何优化数据库的性能
android·数据库·oracle
tatasix1 小时前
MySQL UPDATE语句执行链路解析
数据库·mysql
南城花随雪。1 小时前
硬盘(HDD)与固态硬盘(SSD)详细解读
数据库
儿时可乖了1 小时前
使用 Java 操作 SQLite 数据库
java·数据库·sqlite
懒是一种态度1 小时前
Golang 调用 mongodb 的函数
数据库·mongodb·golang
天海华兮1 小时前
mysql 去重 补全 取出重复 变量 函数 和存储过程
数据库·mysql
gma9992 小时前
Etcd 框架
数据库·etcd
爱吃青椒不爱吃西红柿‍️2 小时前
华为ASP与CSP是什么?
服务器·前端·数据库
Yz98763 小时前
hive的存储格式
大数据·数据库·数据仓库·hive·hadoop·数据库开发