У меня есть следующая таблица:
SELECT * FROM checkin;
+----+--------+---------------------+
| id | userid | date_checked |
+----+--------+---------------------+
| 1 | 15 | 2019-10-08 10:22:15 |
| 2 | 15 | 2019-10-08 10:22:42 |
| 3 | 15 | 2019-10-08 10:23:01 |
| 4 | 40 | 2019-10-08 10:23:44 |
| 5 | 15 | 2019-10-08 10:24:06 |
| 6 | 15 | 2019-10-08 10:24:09 |
| 7 | 3 | 2019-10-08 10:24:59 |
+----+--------+---------------------+
Я хочу выбрать строки с самыми высокими датами date_checked для каждой группы последовательных равных идентификаторов пользователей. В этом примере я ожидал бы что-то вроде этого:
+----+--------+---------------------+
| id | userid | date_checked |
+----+--------+---------------------+
| 3 | 15 | 2019-10-08 10:23:01 |
| 4 | 40 | 2019-10-08 10:23:44 |
| 6 | 15 | 2019-10-08 10:24:09 |
| 7 | 3 | 2019-10-08 10:24:59 |
+----+--------+---------------------+
Пожалуйста, перед тем, как пометить как «дублированный из», обратите внимание, что: мне не нравится DISTINTC столбца идентификатора пользователя, один и тот же идентификатор пользователя может повторяться несколько разраз.
Как я могу это сделать?