首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何用相同的列对两个表进行分组,以完成列值的总计

如何用相同的列对两个表进行分组,以完成列值的总计
EN

Stack Overflow用户
提问于 2018-12-04 15:31:19
回答 1查看 38关注 0票数 0

我有两个带有相同列的oracle表,我想对这两个表创建一个查询,通过一个列进行总计:表1:

代码语言:javascript
复制
PRODUCTION_SYSTEM_ID CARD_TYPE       TOTAL DATE_CREATION
-------------------- ---------- ---------- -------------
                   1 OPIC                1 28/09/18          
                   1 IC                  2 29/11/18      
                   1 IC                  1 27/09/18  

表2:

代码语言:javascript
复制
PRODUCTION_SYSTEM_ID CARD_TYPE       TOTAL DATE_CREATION
-------------------- ---------- ---------- -------------
                   1 OPIC                1 28/09/18          
                   1 IC                  2 29/11/18      
                   1 IC                  2 27/09/18  

我想要创建一个select查询,允许根据列card_type和date_creation计算一个表的总数

查询结果应如下:表3:

代码语言:javascript
复制
PRODUCTION_SYSTEM_ID CARD_TYPE       TOTAL DATE_CREATION
-------------------- ---------- ---------- -------------
                   1 OPIC                2 28/09/18          
                   1 IC                  4 29/11/18      
                   1 IC                  3 27/09/18  
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-12-04 15:35:15

您需要将UNION ALLGROUP BY放在一起:

代码语言:javascript
复制
SELECT PRODUCTION_SYSTEM_ID 
        ,CARD_TYPE       
        ,SUM(TOTAL) TOTAL 
        ,DATE_CREATION
FROM
    (
        SELECT PRODUCTION_SYSTEM_ID 
                ,CARD_TYPE       
                ,TOTAL 
                ,DATE_CREATION
        FROM TABLE1
        UNION ALL
        SELECT PRODUCTION_SYSTEM_ID 
                ,CARD_TYPE       
                ,TOTAL 
                ,DATE_CREATION
        FROM TABLE2
    ) S 
GROUP BY 
         PRODUCTION_SYSTEM_ID 
        ,CARD_TYPE       
        ,DATE_CREATION
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53616315

复制
相关文章

相似问题

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