MySQL数据库---函数

一、字符串函数

--concat(连接)

selete concat('Hello','World');

--lower(小写)

selete lower('HELLO');

--upper(大写)

selete upper('hello');

--lpad(左填充)

selete lpad('01',5,'-');

--rpad(右填充)

selete rpad('01',5,'-');

--trim(去除头尾空格)

selete trim(' hello mysql ');

--substring(截取字符)

selete substring('hello mysql',1,5);

案例:员工工号5位数,往前补零3

update emp set  workno = lpad('workno',5,'0');

二、数值函数

--ceil(向上取整)

selete ceil(1.5);

--floor(向下取整)

selete floor(1.9);

---mod(求模)

selete mod(7,4);

--rand(求0-1随机)

selete rand();

--round(四舍五入)

selete round (2.3344,2);

案例:通过数值函数生成一个6位的大随机验证码

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

三、日期函数

--curdate

selete curdate();

--curtime

selete curtime();

--YEAR MONTH DAY

selete YEAR(NOW());
selete MONTH(NOW());
selete DAY(NOW());

--DATE_ADD()

selete date_add(now(),interval 70 year);

--dateiff

selete dateiff('2002-05-03','2003-08-02');

--案例

selete name,dateiff(curdate(),entrydate) as entrydate from emp order by entrydays decs;

四、流程函数

--if

selete if(false,'OK','Error');

--ifnull(判断是否为空)

selete ifnull('ok','default');
selete ifnull('','default');

--case when else end

--查询emp表的员工姓名和工作地址(北京/上海----一线;其它-----二线)

selete 
name,
case workaddress when '北京' then '一线城市' when '上海' then '一线城市' else '二线城市'
from emp;

--案例:统计班级成绩,展示规则:

-->=85,展示优秀

-->=60,展示及格

selete 
    ID,
    NAME,
    (case when MATH >=85 then '优秀' when MATH >= 60 THEN '及格' else '不及格' end)'数学',
    (case when English >=85 then '优秀' when English >= 60 THEN '及格' else '不及格' end)'英语',
    (case when Chinese >=85 then '优秀' when Chinese >= 60 THEN '及格' else '不及格' end)'语文',
from score;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值