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 运算符。
相关推荐
java修仙传10 小时前
Java 实习日记:断面分析基态限额为空问题的排查与修复
java·开发语言·bug·实习
njsgcs11 小时前
我仓库内cad python 有哪些应用到聚类的方法
开发语言·python·聚类
web3.088899911 小时前
电商数据化运营:速卖通API+Python打造竞品监控与选品利器
开发语言·python
小小编程路11 小时前
C++ 常用逻辑运算符
开发语言·c++·算法
眷蓝天11 小时前
Prometheus介绍及监控平台部署
java·开发语言
五月君_11 小时前
Rust 重写 AI 味太浓,Bun 被 yt-dlp 封版本、Electrobun 直接解绑
开发语言·后端·rust
y = xⁿ11 小时前
JUC:锁机制/关键字
java·开发语言
legendary_16311 小时前
Type-C浪潮席卷小家电:SINK芯片如何成为快充高压的“心脏“
c语言·开发语言
Struggle_975511 小时前
算法知识-堆相关知识
java·开发语言·算法