MySQL的其他函数

数学函数:

1.round 四舍五入

sql 复制代码
select round(1.45);//不管正负数,先将绝对值round,然后加正负号
select round(1.567,2); //表示小数点保留2位

2.ceil 向上取整

sql 复制代码
select ceil(-1.3);

3.floor 向下取整

4.truncate 截断

sql 复制代码
select truncate(1.65,1); // 结果保留小数1位:1.6

5.mod 取余

sql 复制代码
select mod(10,3); java中的mod一样: mod(a,b)====a-a/b*b(计算机中整数除以整数的结果还是整数),结论被除数是正,结果就是正,被除数是负结果就是负数

日期函数:

1.now 用户返回当前日期时间

sql 复制代码
select now();

2.curdate 返回当前系统日期,没有时间部分

3.curtime 返回当前系统时间,没有日期部分

4.可以单独获取年/月/日

sql 复制代码
select year(now()); 取得年
select year('2004-1-1') ;

select month(now()); 取得月
select monthname(now()); 取得月名..day hour minute second一样

date_format:将日期换换成字符串,或者理解为格式化日期
date_format(now(),'%y-%m-%d');

案例:查询入职日期是1992-4-3的员工信息

sql 复制代码
select * from employees where hiredate='1992-4-3'; //能找到
select * from employees where hiredate=STR_TO_DATE('1992 4 3','%Y %m %d');

str_to_date:将日期格式的字符转换层指定格式的日期
str_to_date('2018-1-12','%y-%m-%d'); // 这个函数不会给我返回值,用在where条件里!

系统函数:

1.select version();

//查看mysql版本

2.select datebase();

//查看当前使用的数据库

3.select user();

//查看当前用户

流程控制函数:

1.if函数

sql 复制代码
select if(10>1,'大','小');

2.case函数

sql 复制代码
case 要判断的子段或表达式
when case的结果是常量1 then 要显示的值1(或语句1;)
when case的结果是常量2 then 要显示的值2(或语句2;)
......
else case的结果都不前面的时候显示;
end 结束

案例:员工表中, 部门号是30,显示的工资是1.1倍,部门号是40,显示的工资是1.2倍,其他显示原工资

sql 复制代码
SELECT salary AS 原工资,department_id,
CASE department_id
WHEN 30 THEN salary*1.1
WHEN 50 THEN salary*1.2
ELSE salary
END AS 新工资
FROM employees;
相关推荐
bst@微胖子12 小时前
CrewAI+FastAPI实现营销战略协助智能体项目
android·数据库·fastapi
小鸡脚来咯12 小时前
MySQL面试题
数据库·mysql
、BeYourself13 小时前
✅ 宝塔 PostgreSQL 安装 contrib 扩展完整指南
数据库·postgresql·springai
枫叶丹413 小时前
【Qt开发】Qt系统(二)-> 事件分发器
c语言·开发语言·数据库·c++·qt·系统架构
代码游侠13 小时前
复习—sqlite基础
linux·网络·数据库·学习·sqlite
计算机毕设VX:Fegn089513 小时前
计算机毕业设计|基于springboot + vue小区人脸识别门禁系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
@小码农13 小时前
202512 电子学会 Scratch图形化编程等级考试三级真题(附答案)
服务器·开发语言·数据结构·数据库·算法
哈里谢顿13 小时前
MySQL + Redis 协同 示例
redis·mysql
烂漫心空14 小时前
Windows 系统如何使用 Mysql 服务
数据库·mysql
是Yu欸14 小时前
vLLM 0.11.0 新特性解析:视觉推理精度跃升与长序列性能革新
数据库·qwen·昇腾·npu·vllm