Originariamente inviato da juliusgg
Ciao a tutti, seguo da tempo il forum ma è la prima volta che apro una discussione. Spero possiate aiutarmi.
Ho creato un mio applicativo per la gestione delle pratiche in ufficio con Php su DB MySql ma sono incastrato su un problema che magari è una cavolata.
Ho due tabelle "gst_giornale" e "gst_commesse".
La tabella gst_giornale contiene le note relative alla commessa. Ogni nota ha una data. Ogni nota ha il campo "id_commessa".
La tabella gst_commesse contiene la descrizione della commessa e altri dati tra cui il "num_status" che è lo status a cui si trova la commessa.
Vorrei trovare tutte le note delle commesse con status 27 aventi la data più recente.
Ho scritto questa:
SELECT gst_commesse.id_commessa,descrizione_com,nota_gior nale,MAX(data_giornale) as maxdata
FROM gst_giornale, gst_commesse
WHERE gst_commesse.id_commessa = gst_giornale.id_commessa
AND num_status = 27
GROUP BY gst_giornale.id_commessa
ORDER BY data_giornale DESC
che mi sembrava funzionare e invece ... non è giusta. Infatti (e giustamente) l'operatore MAX trova si la data più recente tra le note della commessa ma il contenuto della nota non è quella relativa al record avente la data più recente. Mi trova separatamente la data più recente di ogni nota della commessa ed il primo record presente in tabella delle note relative alla commessa stesse.
Non riesco a venirne a capo ... e scusate se nel descrivere il tutto non sono stato tanto "stringato" ...