Hallo,
ich bin noch etwas holprig mit SQL, deswegen auch meine Frage hier.
In dem folgenden Query möchte ich gerne meine CaseIDs haben, welche (neben den User filter) NICHT den angegebenen action status, in der höchsten sequenz nummer enthällt.
In dem action table kann eine user ID mehrfach vorkommen und hat dementsprechend eine sequenz nummer.
Mir wird schon beim schreiben leicht schwindelig, weil es wirklich etwas tricky zu erklären ist, aber ich hoffe jemand kann mir sagen was ich falsch mache.
Wenn ich diesen query absende, bekomme ich trotzdem case IDs welche den action code enthalten.
[highlight=sql]
SELECT distinct(XCASE.xCASE_ID)
FROM
(
select max(seq_no) maxSeqNo, xcase_id, action_type
from xaction
group by action_type, xcase_id
) CaseAction
join xcase on xcase.xcase_id = caseaction.xcase_id
Join xSTAFF_HIERARCHY
ON xSTAFF_HIERARCHY.USER_ID = xCASE.CASE_RESP_USER_CD
join xCASE_ISSUE
on xCASE_ISSUE.xCASE_ID = xCASE.xCASE_ID
WHERE (xSTAFF_HIERARCHY.USER_SUBCAT is in ('A1 USERS','A2 USERS')
and xSTAFF_HIERARCHY.end_dt='2050-12-31')
and xSTAFF_HIERARCHY.USER_subgrp is not in ('GLOBAL','USA')
and xCASE.case_status_cd='O'
and xcase.end_dt='2050-12-31'
and caseaction.action_type <> 'TESTACCOUNT'
[/highlight]
ich bin noch etwas holprig mit SQL, deswegen auch meine Frage hier.
In dem folgenden Query möchte ich gerne meine CaseIDs haben, welche (neben den User filter) NICHT den angegebenen action status, in der höchsten sequenz nummer enthällt.
In dem action table kann eine user ID mehrfach vorkommen und hat dementsprechend eine sequenz nummer.
Mir wird schon beim schreiben leicht schwindelig, weil es wirklich etwas tricky zu erklären ist, aber ich hoffe jemand kann mir sagen was ich falsch mache.
Wenn ich diesen query absende, bekomme ich trotzdem case IDs welche den action code enthalten.
[highlight=sql]
SELECT distinct(XCASE.xCASE_ID)
FROM
(
select max(seq_no) maxSeqNo, xcase_id, action_type
from xaction
group by action_type, xcase_id
) CaseAction
join xcase on xcase.xcase_id = caseaction.xcase_id
Join xSTAFF_HIERARCHY
ON xSTAFF_HIERARCHY.USER_ID = xCASE.CASE_RESP_USER_CD
join xCASE_ISSUE
on xCASE_ISSUE.xCASE_ID = xCASE.xCASE_ID
WHERE (xSTAFF_HIERARCHY.USER_SUBCAT is in ('A1 USERS','A2 USERS')
and xSTAFF_HIERARCHY.end_dt='2050-12-31')
and xSTAFF_HIERARCHY.USER_subgrp is not in ('GLOBAL','USA')
and xCASE.case_status_cd='O'
and xcase.end_dt='2050-12-31'
and caseaction.action_type <> 'TESTACCOUNT'
[/highlight]
Comment