Secondo me è inspiegabile.
A parte la restrizione della WHERE nella prima query, le 2 query sono identiche quindi se la prima funziona dovrebbe funzionare anche la seconda.
Ti sugggerisco 2 prove:
Prima prova:
esegui la query direttamente da pannello di controllo di phpmyadmin
Seconda prova:
se lavori in php sicuramente passerai alla query delle variabili ed userai una cosa del genere:
Codice PHP:
$Query "select *  
from dirigente inner join scuola  
on dirigente.CodiceScuola=scuola."
.$CodiceScuola
Potrebbe darsi che la variabile sia sbagiata o non valorizzata.
In questo caso prova a fare una
Codice PHP:
echo $Query