sql/mysql filtre comprenant uniquement la valeur max

J'ai un jeu de résultats qui est comme ceci:

ID | name  | myvalue
 1 | A1    | 22
 2 | A2    | 22
 3 | A3    | 21
 4 | A4    | 33
 5 | A5    | 33
 6 | A6    | 10
 7 | A7    | 10
 8 | A8    | 10
 9 | A9    | 5

ce que je veux, est à inclure uniquement les lignes contenant le plus de "mavaleur" disponibles (dans l'exemple précédent est de 33), puis:

ID | name  | myvalue
 4 | A4    | 33
 5 | A5    | 33

C'est à dire la requête doit ramasser le plus de "mavaleur" disponible (c'est à dire 33) et il faut supprimer les lignes qui ont mavaleur < 33

SELECT ..... WHERE myvalue = THE_HIGHEST_OF(myvalue)

En espérant avoir été clair...

je vous remercie à l'avance


edit:

ma requête actuelle est

SELECT 
    *,
    (very long code that returns a integer as relevance score) AS myvalue
FROM
    mytable
HAVING
    myvalue = ?????
ORDER BY
    myvalue DESC

maintenant, le plus haut mavaleur peut être de 10, 20, 30, n'importe quel nombre... dans le dernier jeu de résultats je veux inclure uniquement les lignes qui ont le plus de pertinence possible de score

j'ai essayé en utilisant le GROUPE, mais j'ai toujours besoin de répéter les...

    (very long code that returns a integer as relevance score) AS myvalue

...deux fois

merci pour vos réponses, est-il un moyen de le faire avec un simple select?
Ce que vous voulez exactement? (voulez répéter myvalue deux fois ou une fois?)
édité principale la réponse!
Vous pouvez pas sélectionner MAX à partir de votre code très long...?
je ne pense pas, mais je ne sais pas, comment je doit utiliser group by?

OriginalL'auteur skyline26 | 2012-09-04