ciao echoweb, scusa il ritardo.
ho letto la mail ma ero fuori casa e sono rientrato solo ieri notte (ultimo giorno di ferie estive).
contento di leggerti ho provato subito la tua query (mamma mia che query! non arriverò mai a questi livelli)
mi sono messo all'opera, subito, senza perdere tempo e pieno di curiosità anche perchè qualche passo avanti l'avevo fatto anch'io.
dunque la tua qury di primo botto mi da:

Codice PHP:
MySQL ha restituito un insieme vuoto (i.ezero righe 
quindi penso che ci sia qualcosa ancora da sistemare....
però vorrei che osservassi questa query di seguito (non completa e ottenuta prima che andassi in ferie):


Codice PHP:
select materiaallievosum(presenze) as tot 
 from presenze
inner join allievi on allievi
.id presenze.allievoid     
left join docenti on presenze
.materiaid docenti.id     
group by allievoid
materiaid 
in effetti ottengo ciò che desidero:
elenco materie e somma ore per singolo allievo. su questa credo che avrò un problema di distinct legato all'allievo (vedremo).


ora devo lavorare su come avere l'output con php
materie a sx in verticale
alllievi in alto in orizzotale ("una sola volta")...
... e la somma ore a incrociare tra materia e allievo.
probabilmente dovrò lavorare con "for". ci perderò un pò di tempo.
a rileggerci