Originariamente inviato da nicola75ss
per ottenere il raggruppamento per peso e statura basta che aggiungi anche l'altro campo al group by

GROUP BY persona.id_altezza,persona.id_corporatura

per visualizzare i dati come vuoi tu dovresti farlo col php.

edit. In alternativa potresti crearti una tabella temporanea e poi su questa fare una query a campi incrociati.

create temporary table incrociata
SELECT COUNT(*) as quanti, altezza.tipo as altezza, corporatura.tipo as peso
FROM persona INNER JOIN altezza ON persona.id_altezza=altezza.id
INNER JOIN corporatura ON persona.id_corporatura=corporatura.id
GROUP BY persona.id_altezza,persona.id_corporatura

e poi fare una query così

select peso,
sum(case altezza WHEN "alto" then quanti else 0 end) AS alto,
sum(case altezza WHEN "medio" then quanti else 0 end) AS medio,
sum(case altezza WHEN "basso" then quanti else 0 end) AS basso
from incrociata
group by peso

fammi sapere.
ho fatto le due query, assegnato i privilegi per creare tabelle temporanee, ma se eseguo le query dal php ho un errore di query, se le faccio dal phpmyadmin funzionano...perchè??

Ho provato a scrivere le query di seguito, nella stessa variabile separandole dal ; ma mi dava errore, ho provato a scriverle in due variabili diverse e richiamarle con due chiamate al db diverse, ma non funziona, credo perchè le tabelle temporanee muoiono subito, sbaglio??
Ma allora come si eseguono queste query dal php? La prima query, quella che crea la tabella temporanea, da sola funziona.