小编val*_*.vx的帖子

左连接导致错误的值

当我执行此查询时:

select CONTA_ANALITICA_GERAL,
    DESIGNACAO_CC as CENTRO_CUSTO,
    sum(VALOR) as TOTAL
from VER_CNTORC_REAL_MES
where ANO = EXTRACT(year from sysdate)
    and MES = 2
    and CONTA_ANALITICA_AUXILIAR > 0
    and CONTA_FINANCEIRA_GERAL like '62%'
group by CONTA_ANALITICA_GERAL,
        DESIGNACAO_CC
Run Code Online (Sandbox Code Playgroud)

我得到以下结果:

在此输入图像描述

但是当我尝试与另一个表进行左连接时(所以在我可以使用第三个连接以获得与"conta_analitica_geral"字段相关联的名称)之后使用此查询:

select A.DESIGNACAO_CC,
       A.CONTA_ANALITICA_GERAL,
       B.CONTA_ANALITICA,
       sum(A.VALOR) as TOTAL
from VER_CNTORC_REAL_MES A
left join VER_MOVIMENTOS_CNT B on A.CONTA_ANALITICA_GERAL = B.CONTA_ANALITICA
where A.MES between 1 and 12
      and A.ANO = 2015
      and A.MES = 2
      and A.CONTA_ANALITICA_AUXILIAR > 0
      and A.CONTA_FINANCEIRA_GERAL like '62%'
group by A.DESIGNACAO_CC,
         A.CONTA_ANALITICA_GERAL,
         B.CONTA_ANALITICA …
Run Code Online (Sandbox Code Playgroud)

sql oracle left-join

1
推荐指数
1
解决办法
417
查看次数

基于ID和组后减去值

我正在使用Oracle.

有一张桌子:

Year   Type   Value
2011   1       500
2011   2       550
2011   3       600
...
...
2012   1       600
2012   2       750
2012   3       930
Run Code Online (Sandbox Code Playgroud)

我需要从年份中减去不同类型的所有值.操作将是:

2011年 - > 1-2-3(500-550-600)

2012年 - > 1-2-3(600-750-930)

为......

结果应该是:

Year   Value
2011   -650  
2012   -1080 
...    ...  
Run Code Online (Sandbox Code Playgroud)

我只是没有设法让这个查询工作..

sql oracle group-by subtraction

0
推荐指数
1
解决办法
1816
查看次数

标签 统计

oracle ×2

sql ×2

group-by ×1

left-join ×1

subtraction ×1