MySQL 运算符详解

MySQL 运算符详解

MySQL 是一种功能强大的关系型数据库管理系统,它提供了丰富的运算符来处理数据。运算符在 SQL 查询中起着至关重要的作用,能够帮助我们进行数据筛选、计算和比较。本文将详细介绍 MySQL 中常用的运算符,包括算术运算符、比较运算符、逻辑运算符等。

算术运算符

算术运算符用于执行基本的数学运算,如加法、减法、乘法、除法等。以下是一些常见的算术运算符:

  • +:加法运算符,用于求和。
  • -:减法运算符,用于求差。
  • *:乘法运算符,用于求积。
  • /:除法运算符,用于求商。
  • %:取模运算符,用于求余数。
markdown 复制代码
### 示例 1:加法运算

```sql
SELECT 5 + 3 AS "Sum";

执行结果:

复制代码
+------+
| Sum  |
+------+
|   8  |
+------+

示例 2:减法运算

sql 复制代码
SELECT 5 - 3 AS "Difference";

执行结果:

复制代码
+------------------+
| Difference       |
+------------------+
|                2 |
+------------------+

示例 3:乘法运算

sql 复制代码
SELECT 5 * 3 AS "Product";

执行结果:

复制代码
+---------+
| Product |
+---------+
|       15|
+---------+

示例 4:除法运算

sql 复制代码
SELECT 5 / 3 AS "Quotient";

执行结果:

复制代码
+----------+
| Quotient |
+----------+
| 1.66667  |
+----------+

示例 5:取模运算

sql 复制代码
SELECT 5 % 3 AS "Modulus";

执行结果:

复制代码
+---------+
| Modulus |
+---------+
|       2 |
+---------+


## 比较运算符

比较运算符用于比较两个表达式的值,并返回布尔值(TRUE 或 FALSE)。以下是一些常见的比较运算符:

- `=`:等于。
- `<>` 或 `!=`:不等于。
- `>`:大于。
- `<`:小于。
- `>=`:大于等于。
- `<=`:小于等于。

```markdown
### 示例 1:等于运算

```sql
SELECT * FROM employees WHERE salary = 5000;

执行结果:

复制代码
+----+-------+--------+------+
| id | name  | age    | salary |
+----+-------+--------+------+
|  1 | Alice |  28    | 5000 |
+----+-------+--------+------+

示例 2:不等于运算

sql 复制代码
SELECT * FROM employees WHERE salary <> 5000;

执行结果:

复制代码
+----+-------+--------+-------+
| id | name  | age    | salary |
+----+-------+--------+-------+
|  2 | Bob   |  32    | 4000 |
|  3 | Charlie|  40    | 6000 |
+----+-------+--------+-------+

示例 3:大于运算

sql 复制代码
SELECT * FROM employees WHERE salary > 4000;

执行结果:

复制代码
+----+-------+--------+-------+
| id | name  | age    | salary |
+----+-------+--------+-------+
|  1 | Alice |  28    | 5000 |
|  3 | Charlie|  40    | 6000 |
+----+-------+--------+-------+

示例 4:小于运算

sql 复制代码
SELECT * FROM employees WHERE salary < 6000;

执行结果:

复制代码
+----+-------+--------+-------+
| id | name  | age    | salary |
+----+-------+--------+-------+
|  2 | Bob   |  32    | 4000 |
+----+-------+--------+-------+

示例 5:大于等于运算

sql 复制代码
SELECT * FROM employees WHERE salary >= 5000;

执行结果:

复制代码
+----+-------+--------+-------+
| id | name  | age    | salary |
+----+-------+--------+-------+
|  1 | Alice |  28    | 5000 |
|  3 | Charlie|  40    | 6000 |
+----+-------+--------+-------+

示例 6:小于等于运算

sql 复制代码
SELECT * FROM employees WHERE salary <= 6000;

执行结果:

复制代码
+----+-------+--------+-------+
| id | name  | age    | salary |
+----+-------+--------+-------+
|  1 | Alice |  28    | 5000 |
|  2 | Bob   |  32    | 4000 |
+----+-------+--------+-------+


## 逻辑运算符

逻辑运算符用于组合多个条件表达式,并根据逻辑关系返回 TRUE 或 FALSE。以下是一些常见的逻辑运算符:

- `AND`:表示逻辑与,只有当两个条件都为 TRUE 时,结果才为 TRUE。
- `OR`:表示逻辑或,只要其中一个条件为 TRUE,结果就为 TRUE。
- `NOT`:表示逻辑非,用于取反操作。

```markdown
### 示例 1:逻辑与运算

```sql
SELECT * FROM employees WHERE age > 30 AND salary >= 5000;

执行结果:

复制代码
+----+-------+--------+-------+
| id | name  | age    | salary |
+----+-------+--------+-------+
|  3 | Charlie|  40    | 6000 |
+----+-------+--------+-------+

示例 2:逻辑或运算

sql 复制代码
SELECT * FROM employees WHERE age > 30 OR salary >= 5000;

执行结果:

复制代码
+----+-------+--------+-------+
| id | name  | age    | salary |
+----+-------+--------+-------+
|  1 | Alice |  28    | 5000 |
|  3 | Charlie|  40    | 6000 |
+----+-------+--------+-------+

示例 3:逻辑非运算

sql 复制代码
SELECT * FROM employees WHERE NOT age > 30;

执行结果:

复制代码
+----+-------+--------+-------+
| id | name  | age    | salary |
+----+-------+--------+-------+
|  2 | Bob   |  32    | 4000 |
+----+-------+--------+-------+


## 总结

本文详细介绍了 MySQL 中的运算符,包括算术运算符、比较运算符和逻辑运算符。通过使用这些运算符,我们可以方便地对数据库中的数据进行筛选、计算和比较。掌握这些运算符对于进行高效的数据库操作至关重要。希望本文能帮助您更好地理解和应用 MySQL 运算符。
相关推荐
.道阻且长.4 分钟前
Linux基本开发工具:gdb和cgdb的使用
linux·运维·服务器·开发语言
starzy199039 分钟前
深入理解Scala匿名函数:函数式编程基石
开发语言·scala
apcipot_rain2 小时前
C++转Java日记(05)
java·开发语言·c++
apcipot_rain10 小时前
C++转Java日记(04)
java·开发语言·c++
云和数据.ChenGuang12 小时前
LangGraph 异步 Node 的设计与写法实践
开发语言·人工智能·python·机器学习·php
蜗牛一步步往上爬15 小时前
第十六章 C++语言在深度学习中的应用
开发语言·c++·深度学习
张张123y17 小时前
DSH 插件调试避坑:client.js 设置面板、热重载与高频报错排查表
开发语言·javascript·人工智能·开源·ecmascript·后端开发·ai agent
冻柠檬飞冰走茶20 小时前
字母移动游戏题解:贪心求最长可保留连续子串(附 C 实现)
c语言·开发语言·数据结构·算法·动态规划
FRing0320 小时前
vue2干货总结7(自定义指令、插槽、单页应用程序、路由的使用(VueRouter))
开发语言·前端·vue.js·vue2
雪落漂泊20 小时前
C++算法 二分查找篇(上)
开发语言·c++·算法