
Originariamente inviata da
bomberdini
se vuoi inserire in select un campo quando hai un group by, quel campo deve apparire con una funzione di aggregazione.
In MS Access ci sono 2 funzioni molto utili e intuitive : FIRST() , LAST()
in mysql non ci sono ma puoi comunque usare MAX(),MIN()
Quindi, aggiungi il campo che vuoi , ma con la funzione di aggregazione MAX o MIN

Ciao bomberdini 
Se non ho capito male ho modificato la precedente query
codice:
SELECT gruppo, MAX( prezzo ) AS max_prezzo
FROM sql_libri
GROUP BY gruppo
ORDER BY max_prezzo
con questa
codice:
SELECT gruppo, MAX( Titolo ) AS Titolo, MAX( prezzo ) AS max_prezzo
FROM sql_libri
GROUP BY gruppo
ORDER BY max_prezzo
ma come c'è da aspettarsi i due MAX mi ritornano rispettivamente i MAX (alfabetico o numerico) del titolo e del prezzo, ma non me li allinaea.
Con questa seconda query ottengo questo
codice:
gruppo Titolo max_prezzo
scansoft PhotoShow 230.00
macromedia Macromedia Spectra 240.00
corel KPT Vector Effects 260.00
adobe Adobe Photoshop 7.0 499.99
curiouslabs Poser 4 Pro 670.00
La reale situazione è invece questa:
Gruppo adobe:
max_prezzo = 499.99
titoli corrispondenti:
Adobe Digital Video Collection
Adobe GoLive/LiveMotion Pack
Gruppo corel:
max_prezzo = 260.00
titoli corisponenti:
CorelDRAW
Gruppo macromedia:
max_prezzo = 240.00
titoli corisponenti:
Macromedia Spectra
ecc per le altre voci.
Quindi non credo di dover cercare il MAX anche del titolo, ma un approccio diverso alla query.
Come dicevo prima potrei anche cimentarmi con una WHERE ma non so come fare per allineare i valori massimi dei titoli coi titoli stessi.
Con la prima Query che ho presentato riesco solo ad allineare il gruppo col massimo prezzo dei titoli.
O forse non posso propio pretendere di visualizzare, oltre al gruppo, i soli Titoli che hanno il prezzo maggiore?