SELECT *,
'next'
FROM table
WHERE `name` > 'BBB'
ORDER BY `name`
LIMIT 1
UNION
SELECT *,
'previous'
FROM table
WHERE `name` < 'BBB'
ORDER BY `name` DESC
LIMIT 1
Si vous ne connaissez pas BBB
particulier name
valeur du champ - vous pouvez la remplacer par une sous-requête telle que SELECT name FROM table WHERE id = 42
, où 42
est l'ID
connu valeur.