MySQL常用函数

1.数值型函数

①round(x,y) 四舍五入 x为查询数值的字段,y为保留几位小数的值

特点:返回数值x带有y为小数结果的数值

语法:select round(查询数值字段,y) from 表名;

例:

#价格四舍五入

select round(price) as 价格 from books;

②floor(x) 向下取整 小数位全舍去,取整数部分

特点:返回x的向下取整的整数

语法:select floor(查询字段) from 表名;

例:

#价格四舍五入,保留1位小数

select floor(price,1) as 价格,bname from books;

③ceil(x) 向上取整 小数位全舍去,取原整数部分+1

特点:返回x的向上取整的整数

语法:select ceil(查询字段) from 表名;

例:

#价格四舍五入

select ceil(price) as 价格,bname from books;

④truncate(x,y) 数值截取 x为查询数值的字段(表达式) y为保留几位小数的值

特点:返回数值x截取y位小数的结果(不四舍五入)

语法:select truncate(字段或表达式,数值2) from 表名;

例:

#价格打78折

select truncate(price*0.78,1) as 打折后价格,bname from books;

2.字符型函数

①concat(str1,str2,str3...) 合并字符串

特点:将多个字符串合并成一个字符串

语法:select concat(字段1,字段2...) from 表名;

例:

#合并书名和作者

select concat(bname,author) as 合并显示的结果 from books;

②upper(x)

特点:用于将字母转成大写

语法:update 表名 set 字段名=upper(字段名) where 条件;

例:

#更新图书信息,把书名全部更新成原书名的大写

update books set bname=upper(bname);

③lower(x)

特点:用于将字母转成小写

语法:update 表名 set 字段名=lower(字段名) where 条件;

例:

#更新图书信息,把书名全部更新成原书名的小写

update books set bname=lower(bname) where cno=001;

④reverse(x)

特点:用于将字符串翻转

语法:update 表名 set 字段名=reverse(字段名) where 条件;

例:

#更新西游记这本图书的书名,更新成原书名的翻转之后的结果

update books set bname=reverse(bname) where bname=”西游记”;

3.时间日期函数

①curdate()

特点:返回当前日期 只返回年月日,没有时分秒

insert into info (cno,bno,rdate) values (105,1006,curdate());

②now()

特点:返回当前日期 返回年月日 时分秒

③year(date)

特点:从日期中选择出年份

语法:select year(查询字段) from 表名 where 条件;

select year(rdate) as 年份,cno,bno from info where bno=1006;

④date_format(date,'%Y-%m-%d')

特点:%Y-%m-%d把日期格式调整为年-月-日的格式  Y为四位数的年份  %h时 %i分 %s秒

语法:select date_format(字段,'%Y-%m-%d') from 表名;

4.流程控制类函数

①if(v,t,f)

特点:如果v为真返回t,否则返回f

例:

查看张三是不是大数据2班的是就显示是,否则显示否

select if(class=”大数据2班”,”是”,”否”) as 结果 from card where name=”张三”;

select if(1!=1,'1','2') from DUAL;  结果:输出2

②ifnull(v1,v2)

特点:如果v1不为null返回v1,否则返回v2

例:select ifnull(null,'1') from DUAL;  结果:输出1

③case when v then v1 end

    特点:判断如果v为真返回v1

例:select case when 1=1 then 'true' else 'false' end from DUAL;  结果:输出true

5.数据库类函数

database()  返回当前数据库名称  select database();

version() 返回当前数据库版本 select version();

md5(s) 返回MD5加密值

语法:假设将字段值1加密

insert into 表名(列1,列2...) values(md5(字段值1),字段值2);

例:

#插入一本书,新书的名称要经过加密

Insert into books (bname,author,price,quanitity) values (MD5(‘西游记’),’吴承恩’,20,10);

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

layroy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值