Size: a a a

SqlCom.ru - Стиль жизни SQL

2020 August 01

f

f in SqlCom.ru - Стиль жизни SQL
Kizzlota
привет, подскажите пжл как с помощью SELECT квери выбрать из таблицы значения
с наивысшей временной меткой (таймстемпом, например - created_at, пускай назовем),
при условии что в таблице есть дубликаты записей (разница в них по created_at).  
версия  mysql не позволяет испольпользовать row_number over partiotion by.
| user_id  |      email       |      created_at     |
-----------------------------------------------------
|  111     |   test@lol.com   | 2020-08-01 12:45:00 |
-----------------------------------------------------
|  111     |   test@lol.com   | 2020-08-01 12:46:25 |
-----------------------------------------------------
|  222     |   test-2@lol.com | 2020-08-01 12:50:25 |
-----------------------------------------------------
|  333     |   test-3@lol.com | 2020-08-01 12:50:30 |
-----------------------------------------------------
|  333     |   test-3@lol.com | 2020-08-01 12:53:30 |
-----------------------------------------------------

как из этой псевдо табл. выбрат УНИКАЛЬНЫХ юзеров
с самой позней дате поля created_at.  
то-есть юзеров
111 - 2020-08-01 12:46:25
222 - 2020-08-01 12:50:25
333 - 2020-08-01 12:53:30
Например, с помощью джойна на подзапрос, в котором отберете максимальный таймстемп по юзеру.

Джойн по двум полям - по юзеру и таймстемпу.
источник

K

Kizzlota in SqlCom.ru - Стиль жизни SQL
нашел решение, крывое правда. сделал INNER JOIN на ту же табл  в сабквери к  INNER JOIN нашел максмальную дату по нужному полю и сделал GROUP BY по user_id и в уловиях к JOIN указал условие по времени. сработало. спасибо @SorryThisUsernameIsAlreadyTaketh за наводку.
источник

С

Саня in SqlCom.ru - Стиль жизни SQL
А почему не использовать partition by?
Select username, max(date) over (partition by username)
источник

А

Андрій in SqlCom.ru - Стиль жизни SQL
Саня
А почему не использовать partition by?
Select username, max(date) over (partition by username)
Потому что нету оконок вего mysql
источник

С

Саня in SqlCom.ru - Стиль жизни SQL
А, блин, не увидел, что мускул. Но тогда лучше автору идти на ниндзю)
источник

DN

Denis Novickiy in SqlCom.ru - Стиль жизни SQL
Сергей Игнатов
ребят всем привет, хотел поинтересоваться по такому вопросу, функция COUNT получается объединяет только если запись в строке полностью идентична другой?
объединяет group by, а не count. да, группируются только одинаковые строки (по тем столбцам, что указаны в group by)
источник

СИ

Сергей Игнатов... in SqlCom.ru - Стиль жизни SQL
Denis Novickiy
объединяет group by, а не count. да, группируются только одинаковые строки (по тем столбцам, что указаны в group by)
Понял спасибо) буду пробовать дальше)
источник