no, that SQL statement should work just find, with only a couple changes:
SELECT AssignedTo, COUNT(*) as name_count FROM Bugs WHERE AssignedEmail = '$email' GROUP BY AssignedTo ORDER BY name_count DESC LIMIT 1
this will return only the name that occurs the most, and the number of time it occurs. If you remove LIMIT 1 it will return all of the different names starting with the one that occurs the most.
the php code to use this query looks something like this:
$sql = "SELECT AssignedTo, COUNT(*) as name_count FROM Bugs WHERE AssignedEmail = '$email'
GROUP BY AssignedTo ORDER BY name_count DESC LIMIT 1";
$q = mysql_query($sql);
$r = mysql_fetch_array($q);
if (!$r){
echo("$email not found.");
}
echo("The most common name for " . $email . " is " . $r['AssignedTo'] . " which occurs " .
$r['name_count'] . " times.");