Ich mag würde eine Spalte mit dem letzten Wert von MODLOGIN
von c Quelle empfangen, aber ich erhalte noch einen Fehler:Oracle SQL ORA-00933 Fehler
ORA-00933 command not properly ended.
WITH a AS (SELECT
a.UIDINSTANCEID, a.APPLICATIONNUMBER,a.FIELD3,a.APPLICATIONDATE,a.FIELD12,a.FIELD6 , a.FIELD9, a.FIELD16, a.APPLICATIONSTATUSSYMBOL
FROM HDD99_DSA_UNU.V_APPLICATION a
WHERE
(a.field6 = 'ZAJECIA_EGZEKUCYJNE' or a.field9 = 'ZAJECIA_EGZEKUCYJNE')
AND a.field12 >= :DATA_ROZWIAZANIA_START AND a.field12 <= :DATA_ROZWIAZANIA_KONIEC AND a.HDB_LAST = 'Y'),
c AS (SELECT c.UIDINSTANCEID,c.NEWSTATUSSYMBOL,c.MODDATE,c.MODLOGIN
FROM HDD99_DSA_UNU.V_APPLICATIONEVENTLOG_1R c
),
h AS (SELECT DISTINCT SYMBOL, MAX(NAME) AS NAME FROM
(SELECT h.SYMBOL,h.NAME FROM HDD99_DSA_UNU.V_DICTIONARYVALUES h WHERE h.DICTID = 839 AND h.HDB_LAST = 'Y'
UNION ALL
SELECT h.SYMBOL,h.NAME FROM HDD99_DSA_UNU.V_DICTIONARYVALUES h WHERE h.DICTID = 1226 AND h.HDB_LAST = 'Y'
UNION ALL
SELECT h.SYMBOL,h.NAME FROM HDD99_DSA_UNU.V_DICTIONARYVALUES h WHERE h.DICTID = 1285 AND h.HDB_LAST = 'Y')
GROUP BY SYMBOL)
SELECT
a.APPLICATIONNUMBER AS NR,
to_number(LPAD(a.FIELD3,3)) AS TECHNICZNY_NR,
h.NAME AS NAZWA_DYSPOZYCJI,
TO_CHAR(TO_TIMESTAMP(a.APPLICATIONDATE),'YYYY-MM-DD HH24:MI:SS') AS DATA_REJESTRACJI,
TO_CHAR(TO_TIMESTAMP(a.FIELD12),'YYYY-MM-DD HH24:MI:SS') as DATA_ROZWIAZANIA,
a.FIELD6 AS GRUPA,
a.FIELD9 AS GRUPA2,
a.APPLICATIONSTATUSSYMBOL,
a.FIELD16 AS SLA,
MAX(c.MODLOGIN) KEEP (DENSE_RANK LAST ORDER BY c.UIDINSTANCEID,c.MODDATE) as MODLOGIN
FROM HDD99_DSA_UNO.V_APPLICATION a
GROUP BY c.UIDINSTANCEID
LEFT JOIN HDD99_DSA_UNO.V_APPLICATIONEVENTLOG c
ON a.UIDINSTANCEID = c.UIDINSTANCEID
LEFT JOIN h ON LPAD(a.FIELD3,3) = h.SYMBOL
'DISTINCT' in Kombination mit' GROUP BY' macht keinen Sinn. – HoneyBadger
Sie haben mysql markiert, aber die Ausnahme kommt von Oracle. Wo führst du Abfrage aus? – Kacper
Außerdem kann 'GROUP BY' nicht vor zusätzlichen Joins kommen, und die' group by' ist unvollständig – HoneyBadger