SQL:新列中2列的差异

时间:2015-02-26 10:24:52

标签: sql mariadb calculated-columns mariasql

我有以下SQL表,其中positive列和negative列都是int个。

positive    negative
----------------------
5           3
3           1
10          7

如何创建第三列,例如total等于positive - negative。此外,我希望每次totalpositive列的元素更改时都会更新negative列。

如何在SQL中执行此操作?

编辑:我正在使用MariaDB

2 个答案:

答案 0 :(得分:1)

使用如下所述的计算列

您可以创建表格

create table table_name ( positive int, negitive int, difference as positive-negitive)

然后在创建后,如果输入值为

insert into table_name values(3,2)

- 无需输入第三列,它被称为计算列。

然后插入差异将出现在第三列“差异”


答案 1 :(得分:0)

使用虚拟计算列,如https://mariadb.com/kb/en/mariadb/virtual-computed-columns/

所述
create table table1
(
    positive   int not null,
    negative   int not null,
    difference int as (positive - negative) virtual
);