我有以下SQL表,其中positive
列和negative
列都是int
个。
positive negative
----------------------
5 3
3 1
10 7
如何创建第三列,例如total
等于positive - negative
。此外,我希望每次total
或positive
列的元素更改时都会更新negative
列。
如何在SQL中执行此操作?
编辑:我正在使用MariaDB
答案 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
);