Ho due tabelle simili, una per gli insegnanti ed i loro corsi ed una per gli allievi ed i corsi a cui sono iscritti.
I campi sono:
id, corso, id_insegnanti
id, corso, id_allievo
I record delle tabelle:
| | id | corso | id_allievo |  | 1 | CHITARRA ELETTRICA | 1 |  | 2 | CONTRABBASSO | 1 |  | 3 | CHITARRA ELETTRICA | 2 |  | 4 | CONTRABBASSO | 2 |  | 5 | CHITARRA ELETTRICA | 3 |  | 6 | CONTRABBASSO | 3 |  | 7 | TROMBA | 4 |  | 8 | VIOLINO | 4 |  | 9 | CHITARRA CLASSICA | 5 |  | 10 | TROMBA | 5 |  | 29 | BATTERIA | 6 |  | 12 | TROMBA | 6 |  | 27 | SASSOFONO | 14 |  | 26 | TROMBA | 13 |  | 25 | SASSOFONO | 13 |  | 24 | VIOLINO | 12 |  | 23 | SASSOFONO | 12 |  | 19 | SASSOFONO | 10 |  | 20 | TROMBA | 10 |  | 21 | SASSOFONO | 11 |  | 22 | VIOLINO | 11 |  | 28 | TROMBA | 14 | 
 |  | | sc_corsi_docenti |  | id | corso | id_insegnanti |  | 1 | CHITARRA ELETTRICA | 1 |  | 2 | CONTRABBASSO | 1 |  | 3 | CHITARRA CLASSICA | 2 |  | 4 | TROMBA | 2 |  | 5 | SASSOFONO | 3 |  | 6 | VIOLINO | 3 |  | 7 | TROMBA | 1 |  | 8 | BATTERIA | 4 |  | 9 | EDUCAZIONE MUSICALE | 4 | 
 | 
Facendo i riepiloghi dei corsi per ciascuna tabella ottengo i giusti riepiloghi:
| I corsi assegnati allo staff | 
|---|
| Corsi | N. ass | 
|---|
| BATTERIA | 1 | 
| CHITARRA CLASSICA | 1 | 
| CHITARRA ELETTRICA | 1 | 
| CONTRABBASSO | 1 | 
| EDUCAZIONE MUSICALE | 1 | 
| SASSOFONO | 1 | 
| TROMBA | 2 | 
| VIOLINO | 1 | 
| I corsi assegnati agli allievi | 
|---|
| Corsi | N. ass | 
|---|
| BATTERIA | 1 | 
| CHITARRA CLASSICA | 1 | 
| CHITARRA ELETTRICA | 3 | 
| CONTRABBASSO | 3 | 
| SASSOFONO | 5 | 
| TROMBA | 6 | 
| VIOLINO | 3 | 
Ora quel che desidero ottenere è una cosa del genere:
| corsi | staff assegnati | allievi assegnati | 
| BATTERIA | 1 | 1 | 
| CHITARRA CLASSICA | 1 | 1 | 
| CHITARRA ELETTRICA | 1 | 3 | 
| CONTRABBASSO | 1 | 3 | 
| EDUCAZIONE MUSICALE | 1 |  | 
| SASSOFONO | 1 | 5 | 
| TROMBA | 2 | 6 | 
| VIOLINO | 1 | 3 | 
Ho provato con una UNION, con una INNER JOIN che restituiscono risultati  non soddisfacienti o inesatti e con altri metodi che mi restituiscono  degli errori.
UNION
	Codice PHP:
	
$Query_corsi_full = "
  SELECT corso, count( id_insegnanti )  AS tot,  'ins' AS tipo
  FROM sc_corsi_docenti
  GROUP  BY corso
  UNION  
  SELECT corso, count( id_allievo )  AS tot,  'all' AS tipo
  FROM sc_corsi_allievi
  GROUP  BY corso
  ORDER  BY tipo, tot
"; 
 
JOIN
	Codice PHP:
	
$Query_corsi_full ="
  SELECT sc_corsi_docenti.corso AS corsoA, count( sc_corsi_docenti.id_insegnanti )  AS totA,  'ins' AS tipoA, 
  sc_corsi_allievi.corso AS corsoB, count( sc_corsi_allievi.id_allievo )  AS totB,  'all' AS tipoB
  FROM sc_corsi_docenti  
  INNER  JOIN sc_corsi_allievi 
  ON sc_corsi_docenti.id = sc_corsi_allievi.id
  GROUP  BY sc_corsi_docenti.corso, sc_corsi_allievi.corso
"; 
 
Con la UNION ottengo risultati giusti, ma, giustamente, coi dati intabellati in modo verticale.
Con la JOIN ottengo i dati intabellati in maniera orizzontale, ma con risultati errati:
Ora chiedo se c'è un modo per ottenere i dati disposti come nell'esempio mostrato più sopra. 
Grazie per l'attenzione.