Comment trouver le prochain enregistrement après un spécifiés dans SQL?

Je voudrais utiliser une seule requête SQL (MySQL) pour trouver le dossier qui vient après celui que j'ai préciser.

I. e., si la table a:

id, fruit
--  -----
1   apples
2   pears
3   oranges

J'aimerais être capable de faire une requête du genre:

SELECT * FROM table where previous_record has id=1 order by id;

(clairement ce n'est pas vrai syntaxe SQL, je suis juste à l'aide de pseudo-SQL pour illustrer ce que je suis en train de réaliser)

qui permettrait le retour:

2, pears

Ma solution actuelle est juste pour récupérer tous les enregistrements, et de regarder à travers eux en PHP, mais c'est plus lent que je le voudrais. Est-il un moyen plus rapide pour le faire?

Je serais heureux avec quelque chose qui est rentré deux lignes -- c'est à dire celui avec la valeur spécifiée et la ligne suivante.

EDIT: Désolé, ma question était mal formulée. Malheureusement, ma définition de "prochain" n'est pas basée sur l'ID, mais sur l'ordre alphabétique du nom des fruits. Donc, mon exemple ci-dessus est fausse, et il faut la retourner oranges, comme il s'agit par ordre alphabétique suivant après les pommes. Est-il un moyen de faire la comparaison sur les cordes au lieu de l'id?

InformationsquelleAutor Ben | 2008-12-31