MySQL数值运算符和函数有哪些?怎么使用?

来源:草根站长作者:北京网站建设头衔:草根站长
导读:本期聚焦于小伙伴创作的《MySQL数值运算符和函数有哪些?怎么使用?》,敬请观看详情,探索知识的价值。以下视频、文章将为您系统阐述其核心内容与价值。如果您觉得《MySQL数值运算符和函数有哪些?怎么使用?》有用,将其分享出去将是对创作者最好的鼓励。

MySQL提供了丰富的数值运算符和函数,能够满足各类数值计算需求,无论是简单的加减乘除,还是复杂的数学运算,都可以通过内置的运算符和函数快速实现。这些功能在数据统计、字段计算、条件筛选等场景中都十分实用。

常用数值运算符

MySQL的数值运算符和其他编程语言的运算符逻辑基本一致,常见的有以下几种:

  • 加法运算符+:用于两个数值相加
  • 减法运算符-:用于两个数值相减
  • 乘法运算符*:用于两个数值相乘
  • 除法运算符/:用于两个数值相除,结果为浮点数
  • 取模运算符%:用于计算两个数值相除的余数
  • 取负运算符-:用于将数值取相反数

下面通过实际查询示例展示这些运算符的使用效果,假设我们有一个测试表test_num,里面有一个val字段,存储了数值10:

-- 查询各种运算符的计算结果
SELECT 
    10 + 5 AS add_result,
    10 - 5 AS sub_result,
    10 * 5 AS mul_result,
    10 / 5 AS div_result,
    10 % 3 AS mod_result,
    -10 AS neg_result;

上述查询会返回对应的计算结果,分别是15、5、50、2.0000、1、-10。

常用数值函数

除了基础运算符,MySQL还提供了大量内置数值函数,覆盖更复杂的数学计算场景:

取整相关函数

  • CEIL(x)CEILING(x):返回大于等于x的最小整数
  • FLOOR(x):返回小于等于x的最大整数
  • ROUND(x, d):对x进行四舍五入,d表示保留的小数位数,默认d为0
  • TRUNCATE(x, d):直接截断x到d位小数,不进行四舍五入
SELECT 
    CEIL(3.2) AS ceil_result,
    FLOOR(3.8) AS floor_result,
    ROUND(3.567, 2) AS round_result,
    TRUNCATE(3.567, 2) AS truncate_result;

上述查询结果为4、3、3.57、3.56。

绝对值与幂运算函数

  • ABS(x):返回x的绝对值
  • POW(x, y)POWER(x, y):返回x的y次方
  • SQRT(x):返回x的平方根,x不能为负数
SELECT 
    ABS(-10) AS abs_result,
    POW(2, 3) AS pow_result,
    SQRT(16) AS sqrt_result;

结果为10、8、4。

随机数与最值函数

  • RAND():返回0到1之间的随机浮点数,可传入种子值让随机数固定
  • GREATEST(x1, x2, ...):返回所有参数中的最大值
  • LEAST(x1, x2, ...):返回所有参数中的最小值
SELECT 
    RAND() AS rand_result,
    GREATEST(1, 5, 3, 9) AS max_result,
    LEAST(1, 5, 3, 9) AS min_result;

RAND()的结果每次查询会变化,最大值结果为9,最小值结果为1。

实际应用场景示例

假设我们有一个商品表product,字段包括price(原价)、discount(折扣,0到1之间),需要计算商品的折后价,同时筛选出折后价大于50的商品:

-- 计算折后价并筛选
SELECT 
    id,
    price,
    discount,
    ROUND(price * discount, 2) AS final_price
FROM product
WHERE price * discount > 50;

这里用到了乘法运算符计算折后价,用ROUND函数保留两位小数,同时通过运算符计算的结果作为筛选条件,满足实际业务需求。

注意事项

  • 除法运算中如果除数为0,MySQL会返回NULL,不会报错,需要注意规避除数为0的情况
  • 取模运算的结果符号和被除数一致,比如-10 % 3的结果是-1,10 % -3的结果是1
  • 函数参数如果不符合要求,比如SQRT传入负数,会返回NULL
在使用数值运算符和函数时,建议先通过简单查询测试逻辑,再应用到复杂的业务查询中,避免出现计算错误。

MySQL数值运算符数值函数数学计算修改时间:2026-06-22 16:12:59

免责声明:​ 已尽一切努力确保本网站所含信息的准确性。网站内容多为原创整理与精心编撰,观点力求客观中立。本站旨在免费分享,内容仅供个人学习、研究或参考使用。若引用了第三方作品,版权归原作者所有。如内容涉及您的权益,请联系我们处理。
内容垂直聚焦
专注技术核心技术栏目,确保每篇文章深度聚焦于实用技能。从代码技巧到架构设计,为用户提供无干扰的纯技术知识沉淀,精准满足专业提升需求。
知识结构清晰
覆盖从开发到部署的全链路。AI、前端、编程、数据库、服务器、建站、系统层层递进,构建清晰学习路径,帮助用户系统化掌握开发与运维所需的核心技术。
深度技术解析
拒绝泛泛而谈,深入技术细节与实践难点。无论是数据库优化还是服务器配置,均结合真实场景与代码示例进行剖析,致力于提供可直接应用于工作的解决方案。
专业领域覆盖
精准对应开发生命周期。从前端界面到后端编程,从数据库操作到服务器运维,形成完整闭环,一站式满足全栈工程师和运维人员的技术需求。
即学即用高效
内容强调实操性,步骤清晰、代码完整。用户可根据教程直接复现和应用于自身项目,显著缩短从学习到实践的距离,快速解决开发中的具体问题。
持续更新保障
专注既定技术方向进行长期、稳定的内容输出。确保各栏目技术文章持续更新迭代,紧跟主流技术发展趋势,为用户提供经久不衰的学习价值。