Bah, ils ne se suivent pas toujours car c'est un champ qui s'incrémente tout seul... Donc, si tu ajoutes 23 éléments, et que tu effaces le 12iem, les autres gardent leur ID (c'est le concepte d'identifiant stable)... donc en effet, ta table sera composée de 22 éléments donc l'ID max sera 23... Fait donc d'abord une première requête pour trouvé l'id le plus grand, tire un nombre au hasard entre 1 et max, fait une recherche dans la base. Si elle aboutit, c'est que l'élément est dans la table et donc qu'il vient d'être tiré au sort, si la requête ne renvoit rien, c'est que l'élément n'existe plus et donc, il faut recommencer...
Un autre solution consiste à utiliser un très mauvais SGBD incapable de donner une réponse correcte, mais la, bonne chance