Filtrare query con il Max di un campo

di il
3 risposte

Filtrare query con il Max di un campo

Ho una query con il seguente SQL

SELECT Nominativi.Visualizzato, [Città_1].[Città] & " (" & [Città_1].[Provincia] & ")" AS NatoA, Nominativi.DataNascita, Nominativi.CodiceFiscale, Nominativi.Indirizzo, [Città].[CAP] & " " & [Città].[Città] & " (" & [Città].[Provincia] & ")" AS [CAP Città Provincia], RuoliOrgani.Organo, RuoliOrgani.RuoloOrgano, PeriodiOrganigrammi.DataVerbale, RuoliOrgani.IDRO
FROM PeriodiOrganigrammi INNER JOIN ((Città INNER JOIN (Città AS Città_1 INNER JOIN Nominativi ON Città_1.IDCittà = Nominativi.IDCittàNascita) ON Città.IDCittà = Nominativi.IDCittà) INNER JOIN RuoliOrgani ON Nominativi.IDNominativo = RuoliOrgani.IDSocio) ON PeriodiOrganigrammi.IDPO = RuoliOrgani.IDPO
ORDER BY PeriodiOrganigrammi.DataVerbale, RuoliOrgani.IDRO;

Fin qui tutto OK.
Adesso ho bisogno di filtrare i record che corrispondono al Max di DataVerbale.

Miei tentativi:
A) Ho messo come criterio =Max([DataVerbale]) sul campo DataVerbale, ma mi invia un errore dicendo che non si possono usare espressioni di aggregazione.
B) Ho utilizzato il comando Totali e messo Max in corrispondenza di DataVerbale...poi le ho provate tutte sugli altri campi, ma non ci ho capito più niente.

Cosa devo fare?

3 Risposte

  • Re: Filtrare query con il Max di un campo

    Ho risolto con query di totalizzazione impostando:
    Max su DataVerbale
    Ultimo su Ogano, RuoloOrgano, IDRO

  • Re: Filtrare query con il Max di un campo

    Reset. Inserendo altri dati nel database, la query mi restituisce risultati incoerenti. Mi ero fossilizzato su Max, invece mettendo il criterio
    =DMax("[DataVerbale]";"PeriodiOrganigrammi")
    senza usare la query totalizzante, ho ottenuto finalmente quello che avevo in testa fin dal principio.

  • Re: Filtrare query con il Max di un campo

    Non è una soluzione tecnica da promuovere quella che hai adottato, anzi è deprecabile nonostante possa funzionare.

    Da sempre si sconsiglia l'uso delle Funzioni di Aggregazione sui domini nelle Query… per vari motivi, i più importanti sono ASSENZA di: efficienza, scalabilità

    Ti suggerirei di rivalutare la cosa… il DMAX può essere tranquillamente sostituito con una SUB SELECT, con Access non ci saranno grandissimi miglioramenti, ma ci saranno… 

Devi accedere o registrarti per scrivere nel forum
3 risposte