Tại sao không bắt đầu với một truy vấn trước của người dùng và tất cả đồ uống mà họ đã đưa ra nhận xét và tính đến thời điểm nào (không biết liệu bạn có nhiều nhận xét trên mỗi người cho bất kỳ đồ uống nhất định nào hay không). Sau đó, tìm nhận xét từ tất cả những người khác SAU nhận xét như vậy về ngày / giờ của bạn ...
Truy vấn này thực sự sẽ nhanh hơn vì nó đang BẮT ĐẦU với chỉ MỘT NGƯỜI SỬ DỤNG nhận xét về đồ uống làm cơ sở, SAU ĐÓ quay trở lại bảng nhận xét cho những nhận xét phù hợp với ID đồ uống và thời gian dừng.
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