SQL 算术运算符

SQL 算术运算符

SQL的算术运算符用于在数据库中对数值数据类型进行基本的数学运算。在SQL中,最常用的算术运算符有:

下面是SQL中所有可用的算术运算符的列表:

运算符 描述 示例
+ 两边的值相加。 10 + 20得到30
- 从左操作数减去右操作数。 20 - 30得到-10
* 两边的值相乘。 10 * 20得到200
/ 左操作数除以右操作数。 20 / 10得到2
% 左操作数除以右操作数,并返回余数。 5 % 2得到1

在本章中,我们将逐个学习每个运算符,并用示例展示其用法。在继续之前,让我们使用以下查询创建一个名为“EMPLOYEE”的表。

CREATE TABLE EMPLOYEE(
   ID INT NOT NULL,
   NAME VARCHAR(15) NOT NULL,
   AGE INT NOT NULL,
   ADDRESS CHAR(25),
   SALARY DECIMAL(10, 2),
   JOIN_DATE DATE,
   PRIMARY KEY(ID)
);

表格创建完成后,我们可以使用以下查询语句向表格中插入一些值:

INSERT INTO EMPLOYEE(ID, NAME, AGE, ADDRESS, SALARY, JOIN_DATE) VALUES(2, 'Ramesh', 21, 'Hyderabad', 25550.12, '2023/01/02');
INSERT INTO EMPLOYEE(ID, NAME, AGE, ADDRESS, SALARY, JOIN_DATE) VALUES(1, 'khilan', 22, 'Nijamabad', 57500.84, '2022/01/14');
INSERT INTO EMPLOYEE(ID, NAME, AGE, ADDRESS, SALARY, JOIN_DATE) VALUES(4, 'Kaushik', 18, 'Bangolore', 47275.43, '2023/03/15');
INSERT INTO EMPLOYEE(ID, NAME, AGE, ADDRESS, SALARY, JOIN_DATE) VALUES(5, 'chaitali', 23, 'Ranchi', 40700.76, '2022/04/18');
INSERT INTO EMPLOYEE(ID, NAME, AGE, ADDRESS, SALARY, JOIN_DATE) VALUES(6, 'Hardhik', 19, 'Noida', 44200.09, '2023/06/04');
INSERT INTO EMPLOYEE(ID, NAME, AGE, ADDRESS, SALARY, JOIN_DATE) VALUES(3, 'komal', 23, 'Chennai', 44200.09, '2023/10/08');

使用以下查询验证表是否已创建:

SELECT * FROM EMPLOYEE;

如下输出所示,数据表已在数据库中创建。

ID NAME AGE ADDRESS SALARY JOIN_DATE
1 Khilan 22 Nizamabad 57500.84 2022-01-14
2 Ramesh 21 Hyderabad 25550.12 2023-01-02
3 Komal 23 Chennai 44200.09 2023-10-08
4 kaushik 18 Bangalore 47275.43 2023-03-15
5 Chaitali 23 Ranchi 40700.76 2022-04-18
6 Hardhik 19 Noida 44200.09 2023-06-04

现在,让我们使用上面的表执行所有的SQL比较操作。

SQL加法(+)运算符

SQL中的加法运算符用于将两个或多个数值相加。它类似于基本数学中的“加号”符号。

示例

在下面的示例中,我们尝试执行加法操作,将所有员工的现有工资增加5000。

SELECT ID, NAME, SALARY, SALARY + 5000 AS "SALARY_BONUS" FROM employee;

输出结果

当执行以上查询时,得到如下输出结果:

ID NAME SALARY SALARY_BONUS
1 Khilan 57500.84 62500.84
2 Ramesh 25550.12 30550.12
3 Komal 44200.09 49200.09
4 kaushik 47275.43 52275.43
5 Chaitali 40700.76 45700.76
6 Hardhik 44200.09 49200.09

SQL 减法 (-) 运算符

例子

在这里,我们使用 – 运算符来计算最高薪水和最低薪水员工之间的薪水差。

SELECT MAX(salary), MIN(salary), MAX(salary)-MIN(salary) AS salary_difference FROM employee;

输出

在执行上述查询时,输出显示如下 –

MAX(salary) MIN(salary) salary_difference
57500.84 25550.12 31950.72

SQL乘法(*)操作符

SQL中的乘法操作符用于对数值进行数学乘法运算。它允许我们将两列或多个数值表达式相乘,从而得到一个新值,表示操作数的乘积。

示例

现在,我们正在执行*操作,为所有员工的工资增加10%的奖金。

SELECT NAME, AGE, ADDRESS, SALARY * 1.10 AS new_salary_with_bonus FROM employee;

输出

上述查询的结果表如下所示 –

NAME AGE ADDRESS new_salary_with_bonus
Khilan 22 Nijamabad 63250.9240
Ramesh 21 Hyderabad 28105.1320
Komal 23 Chennai 48620.0990
kaushik 18 Bangalore 52002.9730
Chaitali 23 Ranchi 44770.8360
Hardhik 19 Noida 48620.0990

SQL Division (/)操作符

SQL中的除法操作符(/)用于对数值进行数学除法。它允许我们将一个数值操作数除以另一个数值操作数,结果是一个表示除法商的新值。

示例

在这里,我们使用/操作符来计算所有员工的平均工资。

SELECT AVG(SALARY) AS average_salary FROM employee;

输出

以下是上述查询的输出结果 –

average_salary

43237.888333

SQL 求模运算符(%)

SQL 中,求模运算符(%)用于在一个数值被另一个数值除后,找出余数。它返回除法操作的整数余数。

示例

在下面的示例中,我们使用 % 运算符来找出具有偶数员工 ID 的员工。

SELECT * FROM employee WHERE ID % 2 = 0;

输出

产生的输出如下所示 –

ID NAME AGE ADDRESS SALARY JOIN_DATE
2 Ramesh 21 Hyderabad 25550.12 2023-01-02
4 kaushik 18 Bangalore 47275.43 2023-03-15
6 Hardhik 19 Noida 44200.09 2023-06-04

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程