gpt4 book ai didi

oracle - 插入同一个表后更新表列-PLSQL

转载 作者:行者123 更新时间:2023-12-04 05:12:05 26 4
gpt4 key购买 nike

表中有 4 列,marks1、marks2、marks3 和 total。
当我们插入marks1、marks2 和marks3 时,触发器应该计算总数并更新总数。

最佳答案

如果碰巧您使用的是 Oracle 11g,为了获得所需的结果,您可以向表中添加一个虚拟列:

SQL> create table your_table(
2 marks1 number,
3 marks2 number,
4 marks3 number
5 )
6 ;

Table created

SQL>
SQL> alter table your_table
2 add total number generated always as (nvl(marks1, 0)+
3 nvl(marks2, 0)+
4 nvl(marks3, 0)
5 )
6 ;

Table altered

SQL> insert into your_table(marks1,marks2,marks3)
2 values(1,2,3);

1 row inserted

SQL> commit;

Commit complete

SQL> select * from your_table;

MARKS1 MARKS2 MARKS3 TOTAL
---------- ---------- ---------- ----------
1 2 3 6

关于oracle - 插入同一个表后更新表列-PLSQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14790007/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com