Consulta oracle com erro

Dúvidas, dicas e truques de SQL, Select, Update, Delete, cláusulas, operações com joins, Funções em SQLs, etc
rhicky
Rank: Programador Sênior
Rank: Programador Sênior
Mensagens: 58
Registrado em: Sex, 20 Jul 2007 9:48 am
Localização: S. J. do Rio Preto/SP
Rhicky

Pessoal,
A consulta abaixo está apresentando erro. Poderiam ajudar?

Pessoal, o que está errado na consulta abaixo?

Selecionar tudo

DECLARE
	V_mês VARCHAR(2), V_ANO VARCHAR(4), V_CODCOLIGADA INT;

SET V_CODCOLIGADA :=1;
SET V_mês  :=12;
SET V_ANO  :=2018;

BEGIN

SELECT
 J.CODCOLIGADA,
 J.NOMEFANTASIA 'COLIGADA',
 G.CODFILIAL,
 G.NOMEFANTASIA 'FILIAL',
 V_mês mês,
 V_ANO ANO,
 A.CHAPA,
 A.NOME,
 H.DESCRICAO CONTRATO,
 D.DESCRICAO SITUACAO,
 E.DESCRICAO SECAO,
 F.NOME FUNCAO,
 A.JORNADAMENSAL/60 JORNADA,
 A.SALARIO,
 
 (SELECT SUM(NVL(X.REF, 0) * ((Y.JORNADAMENSAL/60) / 30.0))
  FROM PFFINANC X, PFUNC Y
  WHERE X.CODCOLIGADA = A.CODCOLIGADA AND
        X.CHAPA = A.CHAPA AND
        Y.CODCOLIGADA = X.CODCOLIGADA AND
        Y.CHAPA = X.CHAPA AND
        X.MESCOMP = V_mês AND
        X.ANOCOMP = V_ANO AND
        X.CODEVENTO IN ('0001', '0092')
 ) HORASTRABALHO,
 
  (SELECT SUM(X.REF)
  FROM PFFINANC X
  WHERE X.CODCOLIGADA = A.CODCOLIGADA AND
        X.CHAPA = A.CHAPA AND
        X.MESCOMP = V_mês AND
        X.ANOCOMP = V_ANO AND
        X.CODEVENTO = '2053'
 ) FALTASATRASOS
    

FROM PFUNC A

LEFT JOIN PCODSITUACAO D ON (D.CODCLIENTE = A.CODSITUACAO)
LEFT JOIN PSECAO E ON (E.CODCOLIGADA = A.CODCOLIGADA AND E.CODIGO = A.CODSECAO)
LEFT JOIN PFUNCAO F ON (F.CODCOLIGADA = A.CODCOLIGADA AND F.CODIGO = A.CODFUNCAO)
LEFT JOIN GFILIAL G ON (G.CODCOLIGADA = A.CODCOLIGADA AND G.CODFILIAL = A.CODFILIAL)
LEFT JOIN PTPFUNC H ON (H.CODCLIENTE = A.CODTIPO)
LEFT JOIN PFFINANC I ON (I.CODCOLIGADA = A.CODCOLIGADA AND I.CHAPA = A.CHAPA AND I.MESCOMP = V_mês AND I.ANOCOMP = V_ANO AND I.CODEVENTO IN ('0001', '0092'))
LEFT JOIN GCOLIGADA J ON (J.CODCOLIGADA = A.CODCOLIGADA)

WHERE A.CODCOLIGADA = V_CODCOLIGADA
AND A.CODTIPO NOT IN ('A', 'D', 'T')

END;
Editado pela última vez por DanielNN em Qua, 02 Jan 2019 10:26 am, em um total de 1 vez.
Razão: TAG CODE
DanielNN
Moderador
Moderador
Mensagens: 641
Registrado em: Seg, 03 Set 2007 3:26 pm
Localização: Fortaleza - CE
att,

Daniel N.N.

O ideal era tu informar o erro apresentado.
Porém está claro que tu colocaste uma consulta SQL dentro de um bloco PLSQL e no PLSQL tu não exibes o resultado da consulta da mesma forma.
Geralmente é feito um CURSOR ou atribuir o resultado da consulta a variáveis via "INTO".

No aguardo de mais detalhes.
Responder
  • Informação