mysql day03

数学函数

select abs(-10) from dual;  取绝对值

select bin(10) from dual;  转二进制

select ceiling(1.1) from dual; 向上取整 如果是整数返回原值

select conv(8, 10, 2) from dual;  进制转换 可以指定转换前与转换后的进制

select floor(1.1) from dual; 向下取整

select format(3.141592654, 3) from dual;   取小数位 保留时采取四舍五入的方式

select least(min(empno), min(deptno)) from emp; least 求括号中的最小值  min用于求列 least用于求括号中的数 而二者都不能串用

select rand() from dual; 生成一个随机数

时间日期相关函数

select datediff(now(),'2022-10-23 10:26:25') from dual; 计算两个日期之间相差多少天

delete from mes where date_add(send_time, interval 5 minute) >= now(); 删除发送时间距离现在大于五分钟的数据

select * from mes where send_time >= date_sub(now(), interval 15 minute);  查找在15分钟内发送的消息

select timediff(now(), '2024-2-13 10:12:32') from dual;

加密函数

select user() from dual; 查询mysql登录的用户

select database() from dual;  查询目前在使用哪个数据库

create table zhl_users(id int,name varchar(12) not null default '',pwd char(32) not null default '');

insert into zhl_users values(100, '周宏亮', md5('123456')); 密码使用md5 加密

插入后查询看到的密码是经过md5加密后的

如果需要查询也需要将密码加密才能查到

select * from zhl_users where name = '周宏亮' and pwd = md5('123456');

流程控制语句

select ename, if(comm is not null, comm, 0.0) from emp;

select ename, if(comm is null, 0.0, comm) from emp;

`select ename,
 (case
 when job = 'CLERK' then '职员'
 when job = 'MANAGER' then '经理'
 when job = 'SALESMAN' then '销售'
 else job
 end) as job
from emp;`

查询增强

预览一下该表

时间比较

查找1992.1.1后入职的员工

select * from emp where hiredate > '1992-01-01';

时间也可以比较 需要主义格式

like使用

模糊查询

%:表示0到多个任意字符串

_:表示单个字符

如何显示首字符为s的员工姓名和工资

select ename, sal from emp where ename like 'S%';

如何显示第三个字符为大写O的所有员工的姓名和工资

select ename, sal from emp where ename like '__O%';

order by子句的使用

按照部门号升序而雇员的工资降序排列,显示雇员信息

select * from emp order by deptno, sal desc;

  • 36
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值