Pourquoi ne pas commencer par une requête préalable de l'utilisateur et de toutes les boissons qu'il a proposées et à quelle heure (je ne sais pas si vous avez plusieurs commentaires par personne pour une boisson donnée ou non). Ensuite, trouvez les commentaires de tous les autres APRÈS votre commentaire de date/heure...
Cette requête devrait en fait être plus rapide car elle COMMENCE avec les commentaires de boisson d'UN SEUL UTILISATEUR comme base, PUIS revient au tableau des commentaires pour ceux qui correspondent à l'ID de boisson et à l'heure limite.
SELECT STRAIGHT_JOIN
dc.*
from
( select
drinkID,
max( datetime ) UserID_DrinkCommentTime
FROM
drinkComments
WHERE
userID = 1
group by
drinkID ) PreQuery
join DrinkComments dc
on PreQuery.DrinkID = dc.DrinkID
and dc.datetime > PreQuery.UserID_DrinkCommentTime
order by
dc.DateTime desc