当前位置: 首页 > article >正文

MySQL算数运算符基础:详解与入门

目录

背景:

过程:

1.加法与减法运算符

1.2扩展:

1.3运算结果得出结论 : 

2.乘法和除法运算

​2.1练习:

2.2运算结果得出结论 : 

3.求模取余运算符

3.1练习:

总结:


背景:

在数据库中,算数运算符(也称为算数运算符)是最基本的运算符之一,它们主要用于执行数值运算。这些运算符可以连接运算符前后两个数值或表达式,对数值或表达式进行加(+)、减(-)、乘(*)、除(/)、取模(%)运算。

过程:

1.加法与减法运算符

SELECT 100, 100+ 0, 100-0, 100+5,100+50-30,100+35.5,100-35.5

FROM DUAL;

1.2扩展:

1.#没有连接的作用,就表示加法运算。此时会将字符串转换为数值(隐式转换)

SELECT 100+’1’ #在Java语言中,结果是’1001’

2. #此时将’a’看做0处理

SELECT 100+’a’

1.3运算结果得出结论 : 

·一个整数类型的值对整数进行加法和减法操作,结果还是一个整数;

·一个整数类型的值对浮点进行加法和减法操作,结果是一个浮点数;

·加法和减法的优先级相同,进行先加后减操作与进行先减后加操作的结果是一样的;

·在Java中,+的左右两边如果有字符串,那么标识字符串的拼接。但是MySQL中+只表示数值相加。如果遇到非数值类型,先尝试转成数值,如果传失败,就按0计算。(补充:MySQL中字符串拼接要使用字符串函数CONCAT()实现)

2.乘法和除法运算

SELECT 100,100 * 1, 100 * 1.0,100/1.0, 100/2, 100+2 * 5 /2,100/3, 100 DIV 0

FROM DUAL; #分母如果是0,结果为null

2.1练习:

乘法练习:

计算出员工的年的基本工资(这里面用到了乘法)

SELECT employee_id,salary,salary * 12 annual_al

FROM employees;

除法练习:

根据年薪计算员工每天的工资

SELECT  employee_id,salary,salary * 12 annual_salary,#年薪(月薪乘以12)
        (salary * 12) / 365 daily_salary #(年薪除以365天))
FROM employees;

2.2运算结果得出结论 : 

·一个数乘以整数1和除以整数1后仍得原数;

·一个数乘以浮点数1和除以浮点数1后变成浮点数,数值与原数相等

·一个数除以整数后,不管是否除尽,结果都为一个浮点数

·乘法和除法的优先级相同,进行先乘后除操作与先除后乘操作,得出的结果相同

·数学运算中,0不能用作除数,在MySQL中,一个数除以0为NULL

3.求模取余运算符

取模运算,也被称为求余运算,是一种在整数除法中确定余数的运算。我们说A对B取模时,意思是求A除以B所得的余数。取模运算在多种都有广泛应用,比如计算机编程、数学计算以及某些特定的算法设计等。

SELECT 12 % 3,12 % 5, 12 MOD -5, -12% 5, -12 % -5

FROM DUAL;

3.1练习:

查询员工id为偶数的员工信息

SELECT employee_id,last_name,salary

FROM employees

WHERE employee_id % 2 = 0;

总结:

算数运算符的好处在于能够简化数学计算过程,使我能够高效地执行加法、减法、乘法、除法等基本运算,从而解决各种实际问题

运算符

名称

作用

示例

+

加法运算法

计算两个值或表达式的和

SELECT A+B

-

减法运算法

计算两个值或表达式的差

SELECT A-B

*

乘法运算符

计算两个值或表达式的乘积

SELECT A*B

/或DIV

除法运算符

计算两个值或表达式的商

SELECT A/B

或者

SELECT ADIV B

%或MOD

求模(求余)运算符符

计算两个值或表达式的余数

SELECT A%B

或者

SELECT A MOD B


http://www.kler.cn/a/392913.html

相关文章:

  • flutter 发版的时候设置版本号
  • Sigrity SPEED2000 Power Ground Noise Simulation模式如何查看PDS系统的自阻抗操作指导
  • 普通电脑上安装属于自己的Llama 3 大模型和对话客户端
  • 基于yolov8、yolov5的番茄成熟度检测识别系统(含UI界面、训练好的模型、Python代码、数据集)
  • 应用程序部署(IIS的相关使用,sql server的相关使用)
  • 时序数据库TimescaleDB安装部署以及常见使用
  • 绿色能源新视界:透明导电膜助力高效光伏
  • Mysql 创建用户并授权
  • Flink 开发工程应加载哪些依赖
  • JavaScript逆向爬虫教程-------基础篇之JavaScript密码学以及CryptoJS各种常用算法的实现
  • 英语中从句和复合句简单介绍
  • 老旧城区供水管网改造优先等级分析
  • stm32学习之路——八种GPIO口工作模式
  • el-form el-table 前端排序+校验+行编辑
  • LLMs之VDB:Elasticsearch的简介、安装和使用方法、案例应用之详细攻略
  • 服务器显卡和桌面pc显卡有什么不同
  • C++builder中的人工智能(17):神经网络中的自我规则非单调(Mish)激活函数
  • sklearn.datasets中make_classification函数
  • 3216. 交换后字典序最小的字符串
  • 单词反转和数组去重,附经典面试题一份
  • C/C++内存管理 | new的机制 | 重载自己的operator new
  • Mysql:使用binlog的一些常用技巧
  • TreeSet是什么
  • 分享一些Kafka集群优化的最佳实践?
  • DeepSpeed:PyTorch优化库,使模型分布式训练能高效使用内存和更快速
  • flink+kafka 如何保证精准一次