About your leftjoin approach, I suggest you think of this as a display question, not a query.
I'd do this in PHP rather than in SQL:
Get the results ORDER BY the alpha column, then write a loop to test the result arrays against the alphabet (you can do this by chr($integer)), displaying either a blank letter, or the query results.
For example:
$charnum=65;
while($answer=mysql_fetch_array($someresult)&&($charnum<91)) {
if(substring ($answer[0],1,1)==chr($charnum)){
echo $answer[0];
}
else {echo chr($charnum);}
$charnum++;
}