当前位置:   article > 正文

ORACLE根据某一列的值修改另一列的值_oracle某列作为条件修改其他列的值

oracle某列作为条件修改其他列的值

SQL> select * from test;

        ID     AMOUNT TYPE
---------- ---------- ----------
         1        100 in
         2        100 in
         3         50 out
         4         70 out
         5        300 in

 

test是随便创建的一个实例表,其中id列唯一标识每次事务处理,amount列标识每次存取金额的数量,type代表了是存(in)还是取(out)。

SQL> select id,amount,case when type='in' then 'Purchase' else 'payment' end type,
  2  sum(case when type='in' then amount else -amount end)
  3  over(order by id)  as balance
  4  from test
  5  ;

        ID     AMOUNT TYPE        BALANCE
---------- ---------- -------- ----------
         1        100 Purchase        100
         2        100 Purchase        200
         3         50 payment         150
         4         70 payment          80
         5        300 Purchase        380

 

balance列记录了每次存取操作以后的账户余额。

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/231063
推荐阅读
相关标签
  

闽ICP备14008679号