É a primeira vez que acesso o fórum. Sou iniciante em SQL. Venho de outra linguagem de programação e devido a mudança de sistema na empresa, estou procurando aprender Oracle SQL. Estou tentando alterar uma consulta que foi passada, e estou emperrado num trecho que não consigo resolver, e peço orientação do Fórum. Vamos lá :
SELECT C.NUNOTA,
C.CODPARC,
P.NOMEPARC,
C.DTNEG,
C.NUMNOTA,
I.CODPROD,
PR.REFERENCIA,
PR.COMPLDESC,
I.CODVOL,
I.QTDNEG,
I.CODLOCALORIG,
(SELECT L1.DESCRLOCAL FROM TGFLOC L1 WHERE L1.CODLOCAL = I.CODLOCALORIG) DESCR_LOCALORIG,
(SELECT PL1.CODLOCALINI FROM AD_TGFPROLOC PL1 WHERE PL1.CODPROD = I.CODPROD) PINI,
(SELECT PL2.CODLOCALFIN FROM AD_TGFPROLOC PL2 WHERE PL2.CODPROD = I.CODPROD) PFIM,
CI.QTDCONF,
CF.NUCONF,
CF.CODUSUCONF,
U.NOMEUSU,
CASE
WHEN CF.STATUS = 'F' THEN
'Finalizada'
ELSE
'Aguardando'
END AS STATUS,
TRUNC(CF.DHINICONF) AS DTCONF,
TO_CHAR(CF.DHINICONF, 'HH24:MI:SS') AS HRINI,
TO_CHAR(CF.DHFINCONF, 'HH24:MI:SS') AS HRFIN,
calcdata_social(TO_CHAR(CF.DHINICONF, 'DD/MM/YYYY HH24:MI:SS'),
TO_CHAR(CF.DHFINCONF, 'DD/MM/YYYY HH24:MI:SS')) AS TEMPO,
(SELECT COUNT(I2.CODPROD) FROM TGFITE I2 WHERE C.NUNOTA = I2.NUNOTA) AS QTDITE,
(SELECT SUM(I2.QTDNEG) FROM TGFITE I2 WHERE C.NUNOTA = I2.NUNOTA) AS QTDVOL
FROM TGFCAB C
INNER JOIN TGFPAR P ON P.CODPARC = C.CODPARC
INNER JOIN TGFITE I ON I.NUNOTA = C.NUNOTA
INNER JOIN TGFPRO PR ON PR.CODPROD = I.CODPROD
INNER JOIN TGFCON2 CF ON CF.NUNOTAORIG = C.NUNOTA
AND CF.NUCONF = C.NUCONFATUAL
INNER JOIN TGFCOI2 CI ON CI.NUCONF = CF.NUCONF
AND CI.CODPROD = I.CODPROD
INNER JOIN TSIUSU U ON U.CODUSU = CF.CODUSUCONF
INNER JOIN TGFLOC L ON L.CODLOCAL = I.CODLOCALORIG
WHERE C.NUNOTA = 334779
GROUP BY C.NUNOTA,
C.CODPARC,
P.NOMEPARC,
C.DTNEG,
C.NUMNOTA,
I.CODPROD,
PR.REFERENCIA,
PR.COMPLDESC,
I.CODVOL,
I.QTDNEG,
I.CODLOCALORIG,
CI.QTDCONF,
CF.NUCONF,
CF.DHINICONF,
CF.DHFINCONF,
CF.CODUSUCONF,
U.NOMEUSU,
CF.STATUS
ORDER BY I.CODLOCALORIG
Desde já fico grato ............