Ciao a tutti, non riesco a esprimere correttamente in SQL (con MYSQL) la seguente query, potete aiutarmi?

Allora, ho il seguente schema (le chiavi primarie sono quelle sottolineate):

sconti (id_sconto , id_albergo, giorni, sconto, rapp_libere_prenotate, data_attivazione, data_disattivazione, attivo)

id_albergo è chiave esterna per la tabella albergo che riporto qui sotto; il campo rapp_libere_prenotate indica semplicemente quante camere sono libere e quante occupate per l'albergo a cui lo sconto si riferisce;

albergo (id_albergo, nome_albergo, via, nazione, citta, cap, tel, stelle, descrizione, check_in, check_out)

la query che devo fare dovrebbe darmi come risultato il seguente:

mostrare gli alberghi in cui si sono verificati gli sconti maggiori, unitamente al nome, il periodo, i giorni e il rapporto tra camere libere e prenotate.

Io ho scritto questa interrogazione:

Codice PHP:
SELECT MAXsconto ) AS sconto_piu_altonome_albergodata_attivazionedata_disattivazionerapp_libere_prenotategiorni
FROM sconti NATURAL JOIN albergo
WHERE attivo 
=1
GROUP BY id_albergo
ORDER BY 
`sconto_piu_altoDESC 
Il problema è che questa query mi restituisce correttamente i valori di sconto, nome dell'albergo, data di attivazione e rapporto camere/libere prenotate, ma - e non capisco perché - mi mischia invece i valori di data_disattivazione e giorni, prendendoli da altri record....

Sapreste aiutarmi? Siete la mia ultima speranza!
Grazie!!
Stefano