Well, as I found out, ODBC does not support inline views. That is why the query didn't work. I did manage to get a hold of TOAD to continue working on the problem. All the query needed was an alias for the date_acquired column in the inline view.
The query as it stands now looks like this
Code:
SELECT
a.counterparty_name, a.request_status,
a.external_system_name||'--'|| a.task_name,
a.submitted_by, b.date_acquired, a.date_completed
FROM
ECMADM.R_CP_RQ_ONBOARDING_SUMMARY a,
(SELECT counterparty_name, min(date_acquired) date_acquired
FROM ECMADM.R_CP_RQ_ONBOARDING_SUMMARY
GROUP BY counterparty_name) b
WHERE (a.counterparty_name, a.date_completed) in
(SELECT counterparty_name, max(date_completed)
FROM ECMADM.R_CP_RQ_ONBOARDING_SUMMARY
GROUP BY counterparty_name)
AND a.counterparty_name = b.counterparty_name;
However, things are now a bit more complicated
1) I forgot that the
date_completed column does contain null values. Thus, I am not pulling back the most recent record but the most recent record with a date completed.
2) I need to add some additional columns to this table. The columns are
request_seq and
prodkey
just to give an example of the data structure I am dealing with...
prodkey request_seq counterparty, request_status system_name task_name submitter date_acquired date_completed
123456 100000 company123 COMPLETED RDM Request ABC
23-JUL-2007 25-JUL-2007
123456 100000 company123 COMPLETED RDM Validate ABC 23-JUL-2007 27-JUL-2007
123456 100000 company123 COMPLETED RDM Validate ABC 29-JUL-2007 30-JUL-2007
123456 100000 company123 COMPLETED Sys1 Publish ABC 29-JUL-2007 30-JUL-2007
123456 100000 company123 IN-PROGRESS Sys2 Publish ABC 29-JUL-2007
30-JUL-2007
123456 100001 company123 IN-PROGRESS RDM Request ABC
23-JUL-2007 25-JUL-2007
123456 100001 company123 IN-PROGRESS RDM Validate ABC 23-JUL-2007 25-JUL-2007
123456 100001 company123 IN-PROGRESS RDM Send ABC 23-JUL-2007
NULL
112233 111111 companyABC COMPLETED RDM Request ABC
29-JUL-2007 30-JUL-2007
112233 111111 companyABC COMPLETED RDM Setup ABC 01-AUG-2007 03-AUG-2007
112233 111111 companyABC COMPLETED RDM Validate ABC 03-AUG-2007 04-AUG-2007
112233 111111 companyABC COMPLETED Sys1 Publish ABC 03-AUG-2007
04-AUG-2007
112233 111112 companyABC IN-PROGRESS RDM Request ABC
22-AUG-2007 22-AUG-2007
112233 111112 companyABC IN-PROGRESS RDM Validate ABC 23-AUG-2007 24-AUG-2007
112233 111112 companyABC IN-PROGRESS RDM Reject ABC 24-AUG-2007 24-AUG-2007
112233 111112 companyABC IN-PROGRESS RDM Validate ABC 25-AUG-2007
NULL
The result of the ultimate query should pull back as much data as this (but possibly less depending on my research needs)
prodkey request_seq counterparty, request_status system_name task_name submitter date_acquired date_completed
123456 100000 company123 COMPLETED Sys2 Publish ABC 23-JUL-2007 30-JUL-2007
123456 100001 company123 IN-PROGRESS RDM Send ABC 23-JUL-2007
112233 111111 companyABC COMPLETED Sys1 Publish ABC 29-AUG-2007 04-AUG-2007
112233 111112 companyABC IN-PROGRESS RDM Validate ABC 22-AUG-2007
Any new wildly succsesful ideas?
"Life is like a purple antelope walking through a sea of dead tuna."