У меня есть таблица, которая содержит (скажем) все времена, когда пользователь просматривал определенную веб-страницу.Конечно, пользователи могут просматривать страницу более одного раза, поэтому для пользователей и страниц может быть несколько записей, например:
nid time user page_id
25 8000 4 467
24 7000 1 482
23 6000 1 484
22 5000 1 482
21 4000 5 467
20 3000 4 467
Я хочу сделать запрос, который возвращает строки, соответствующие каждой просмотренной странице.каждым пользователем С ЛОВОМ, ЧТО, если пользователь просматривал страницу более одного раза, я получаю строку, соответствующую самому последнему виду (т. е. наибольшему значению ВРЕМЕНИ).Таким образом, я должен получить это:
nid time user page_id
25 8000 4 467
24 7000 1 482
23 6000 1 484
21 4000 5 467
Мы теряем строку 22, потому что пользователь 1 посмотрел на страницу 482 позже, и мы теряем строку 20, потому что пользователь 4 посмотрел страницу 467 позже.
Я почти понял это, но я не могу его взломать, и при этом убедить себя, что полученные результаты будут в целом правильными, а не просто случайностью моих тестовых случаев.Я продолжаю идти вперед и назад между запросами GROUP BY или DISTINCT и встроенными запросами, и затем мой мозг взрывается.Какие-либо предложения?Спасибо!