Pular para o conteúdo
Visualizando 3 posts - 1 até 3 (de 3 do total)
  • Autor
    Posts
  • #94191
    Cassinha
    Participante

      boa tarde

      Tenho a seguinte explressão:

      ……
      , Sum(case when To_Char(L.Data, ‘mm’) = ’04’ and l.Valor IS NOT NULL or To_Char(L.Data, ‘mm’) <= '04' and To_Char(L.Data, 'mm') >= ’01’ then
      …..

      Preciso verificar se tem algum valor lançado no mes 04, ou seja, mes de março….. caso tenha, dai quero selecionar os meses de janeiro a abril…confome o exemplo acima…. como faco para verificar? No exemplo acima ele verifica:
      Se o mes é igual a Abril – case when To_Char(L.Data, ‘mm’)
      E olha se o valor é null: l.Valor IS NOT
      caso nao seja, ele pega outros meses (Abril a Janeiro):
      or To_Char(L.Data, ‘mm’) <= '04' and To_Char(L.Data, 'mm') >= ’01’

      Eu queria que ele verificasse se o mes 04, tem algum valor ….. se tiver… busca outros meses, caso contrario nao busca e retorna a zero.. como fazer isso?

      Cassinha

      #94205
      burga
      Participante

        Tenta isso no where:

        WHERE
        case when To_Char(L.Data, 'mm') = '04' and L.Valor IS NOT NULL then 1
        else 0 end = 1
        AND To_Char(L.Data, 'mm') <= '04';

        a diferença é que ele trará null e não zero quando não houver valor lançado de abril.

        #94206
        Cassinha
        Participante

          O problema, que tenho um codigo desse para cada mes, um abaixo do outro, por exemplo:

          do mes de janeiro……

          , Sum(case when To_Char(L.Data, ‘mm’) = ’04’ and l.Valor IS NOT NULL or To_Char(L.Data, ‘mm’) = ’01’ then
          (Case When Debito Is Not Null And
          Partida Is Not Null Then -L.Valor
          When Credito Is Not Null Then L.Valor End)end)-S.Valor Abril

          , Sum(case when To_Char(L.Data, ‘mm’) = ’05’ and l.Valor IS NOT NULL or To_Char(L.Data, ‘mm’) = ’01’ then
          (Case When Debito Is Not Null And
          Partida Is Not Null Then -L.Valor
          When Credito Is Not Null Then L.Valor End)end)-S.Valor Maio

          …… ate o mesmo de dezembro….

          Como foi definir um where para cada mes no final?
          Grata

        Visualizando 3 posts - 1 até 3 (de 3 do total)
        • Você deve fazer login para responder a este tópico.