The relative speed of the self-join vs HAVING option is really very difficult to assess - it really depends on the data, the way the indexes are set up, etc.
In addition I think that HAVING is a Sybase/MS-SQL extension, so it may not be available with MySQL.
Sorry for being late... The query above works perfectly with MySql (v3.23.* and v4.*). Besides that, I think HAVING clause is standard SQL. ++ for your answer!