Ciao!

Vorrei in un'unica query estrarre i record da un join tra due tabelle ordinati per data e raggruppati per codice. Il tutto deve essere fatto necessariamente in un'unica query.
Ecco, a pezzi come ho provato ad ottenere il risultato che voglio:

qui estraggo tutti i campi che mi interessano in comune tra le due tabelle ordinati per data:


codice:
SELECT distinct cky_art, dtt_doc, cky_cnt_clfr
FROM zeus_ordc_m INNER JOIN zeus_ordc_d 
ON zeus_ordc_m.azienda = zeus_ordc_d.azienda 
AND zeus_ordc_m.csg_doc = zeus_ordc_d.csg_doc 
AND zeus_ordc_m.ngb_sr_doc = zeus_ordc_d.ngb_sr_doc 
AND zeus_ordc_m.ngl_doc = zeus_ordc_d.ngl_doc 
WHERE cky_cnt_clfr = '501.00001'
order by dtt_doc desc
e fin qua niente di strano. Mi viene restituito il risultato della mia query ordinato per data. Ora voglio fare un distinct dei codici (cky_art) in modo che non ci siamo codici ripetuti

codice:
select distinct cky_art from(SELECT distinct cky_art, dtt_doc, cky_cnt_clfr
FROM zeus_ordc_m INNER JOIN zeus_ordc_d 
ON zeus_ordc_m.azienda = zeus_ordc_d.azienda 
AND zeus_ordc_m.csg_doc = zeus_ordc_d.csg_doc 
AND zeus_ordc_m.ngb_sr_doc = zeus_ordc_d.ngb_sr_doc 
AND zeus_ordc_m.ngl_doc = zeus_ordc_d.ngl_doc 
WHERE cky_cnt_clfr = '501.00001'
order by dtt_doc desc
)
e qua c'è l'inghippo.... mi raggruppa si i codici... ma l'ordinamento per data è andato e me li mette con un ordine casuale.

Sapere dunque dirmi dove stò sbagliando?