首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在具有多个图层的两个表中添加两列

在具有多个图层的两个表中添加两列
EN

Stack Overflow用户
提问于 2014-11-18 01:16:46
回答 2查看 27关注 0票数 0

我在这里有两个表,我需要从其中添加两列。

代码语言:javascript
复制
table 1                     table 2

1   ram     100 null        1   ram     100 1000
2   ram     200 1000        2   ram     200 null
3   ram     100 2000        3   ram     100 3000
4   ram     100 3000        4   ram     100 4000
5   ram     100 null        5   ram     100 5000
1   rahim   100 5000        1   rahim   100 null
2   ram     200 6000        2   ram     200 7000
3   ram     200 null        3   ram     200 8000
4   ram     200 null        4   ram     200 9000
5   rahim   100 9000        5   rahim   100 null
1   robert  100 10000       1   robert  100 11000
2   rahim   200 11000       2   rahim   200 12000
3   ram     300 12000       3   ram     300 null
4   rahim   400 13000       4   rahim   400 14000
5   robert  100 14000       5   robert  100 15000

结果应采用以下形式:

代码语言:javascript
复制
1   ram     100 1000
2   ram     200 -1000
3   ram     100 1000
4   ram     100 1000
5   ram     100 5000
1   rahim   100 -5000
2   ram     200 1000
3   ram     200 8000
4   ram     200 9000
5   rahim   100 -9000
1   robert  100 1000
2   rahim   200 1000
3   ram     300 -12000
4   rahim   400 1000
5   robert  100 1000
EN

回答 2

Stack Overflow用户

发布于 2014-11-18 01:25:20

您可以结合使用joincoalesce来删除null值:

代码语言:javascript
复制
select t1.id, t1.somefield, t1.someint, 
       coalesce(t2.someint2,0)-coalesce(t1.someint2,0)
from table1 t1
  join table2 t2 on t1.id = t2.id 
    and t1.somefield = t2.somefield
    and t1.someint = t2.someint

  • SQL Fiddle Demo

根据您的输入数据,这将连接到前3列。不完全确定这是你想要的,但应该会让你朝着正确的方向前进。

票数 3
EN

Stack Overflow用户

发布于 2014-11-18 01:25:29

我想试试subtract table2.col4 with table1.col4

代码语言:javascript
复制
SELECT a.col1,
       a.col2,
       a.col3,
       NVL(a.col4, 0) - NVL(b.col4, 0) SUB
FROM   table1 A
       JOIN table2 B
         ON A.col1 = b.col1
            AND a.col2 = b.col2 
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26978155

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档