Qual o nome do comando ???

Dúvidas, dicas e truques de PL/SQL. Aqui também vão assuntos relacionados a pacotes, triggers, funções, Java-Stored Procedures, etc
Responder
fabio.nascimento
Rank: Estagiário Pleno
Rank: Estagiário Pleno
Mensagens: 7
Registrado em: Sex, 22 Set 2006 10:52 am
Localização: Osasco

Pessoal,

Tenho a seguinte consulta :

Selecionar tudo

SELECT '3' IDENTIFICACAO, 
             'Processos cancelados: ' DESCRICAO, 
             COUNT(PROC.NUMIDPROCESSO) QUANTIDADE,
             TTR.NUMIDTIPORECLAMACAO CODREC,
             PROC.NUMIDPRODUTO       CODPROD,
             PROC.DATABERTURA        ddd             
      FROM   TBPROCESSOS PROC, 
             TBMOTIVOCONCLUSAO MOT, 
             TBSTATUSPROCESSO STA,
             TBPRODUTOS TPR,
             TBPROCESSOSRECLAMACAO TPROCR,
             TBTIPORECLAMACAO TTR 
      WHERE  PROC.NUMIDMOTIVOCONCLUSAO = MOT.NUMIDMOTIVOCONCLUSAO
      AND    MOT.FLGSTATUS = STA.FLGSTATUS
      AND    STA.FLGSTATUS = 6
      --AND    PROC.FLGSISTCORE IS NOT NULL
      AND    PROC.NUMIDPRODUTO = TPR.NUMIDPRODUTO
      AND    PROC.NUMIDPROCESSO = TPROCR.NUMIDPROCESSO
      AND    TPROCR.NUMIDTIPORECLAMACAO = TTR.NUMIDTIPORECLAMACAO
      --AND    TTR.NUMIDTIPORECLAMACAO = 1
      --AND    PROC.NUMIDPRODUTO = 3
      AND    PROC.DATABERTURA >=TO_DATE( '01032004', 'DDMMYYYY')
      AND    PROC.DATABERTURA <= TO_DATE('31032004','DDMMYYYY')
      --AND    PROC.DATABERTURA >=TO_DATE( TO_CHAR((TRUNC(P_DATA) - 1),'DD/MM/YYYY')||' 00:00:00','DD/MM/YYYY HH24:MI:SS')
      --AND    PROC.DATABERTURA <= TO_DATE( TO_CHAR((TRUNC(P_DATA) - 1),'DD/MM/YYYY')||' 23:59:59','DD/MM/YYYY HH24:MI:SS')
      GROUP BY PROC.FLGSISTCORE, TTR.NUMIDTIPORECLAMACAO, PROC.NUMIDPRODUTO, DATABERTURA
Ela me retorna um numero X de linhas o problema está quando não é encontrado registro algum, eu gostaria que ela me retornasse a seguinte linha

Total = 0

Sendo total uma coluna e o zero outra coluna, isso já faz mas quando possui registros e quando não possui não traz linhas nenhuma,

Eu sei q existe um comando q habilita trazer tal linha..

Será que teria que colocar LEFT JOIN pra me retornar tal linha com valor zero ????


Pessoal, muitissimo obrigado estou sendo atendido prontamente aqui quando minhas duvidas aparecem.

Fabio Nascimento
Avatar do usuário
dr_gori
Moderador
Moderador
Mensagens: 5024
Registrado em: Seg, 03 Mai 2004 3:08 pm
Localização: Portland, OR USA
Contato:
Thomas F. G

Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered

Eu acho que não vale a pena fazer isso no próprio SQL.
Acho que o mais fácil é você tratar o Exception when NO_DATA_FOUND e simplesmente, retornar o texto que você deseja...

Pense o seguinte:
* Se você implementar isso no próprio SQL provavelmente isso vai impactar nos custos do SQL, ou seja, vai demorar mais pra vir as linhas :-/
fabio.nascimento
Rank: Estagiário Pleno
Rank: Estagiário Pleno
Mensagens: 7
Registrado em: Sex, 22 Set 2006 10:52 am
Localização: Osasco

Obrigado dr_gori

Realmente não tenho o traquejo q você tem para sacar essas coisas.

Já tomei como base sua dica e já estou usando, obrigado mesmo.

FAbio Nascimento
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 15 visitantes