Proč nezačít s předběžným dotazem uživatele a všech nápojů, které nabízel, komentáře a v jakém čase (nevím, jestli máte pro daný nápoj více komentářů na osobu nebo ne). Poté najděte komentáře od všech ostatních PO takovém komentáři k datu/času...
Tento dotaz by měl být ve skutečnosti rychlejší, protože ZAČÍNÁ pouze s komentáři nápoje JEDNOHO UŽIVATELE jako základ, POTOM se vrátí zpět do tabulky komentářů pro ty, které odpovídají ID nápoje a době uzávěrky.
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