Как использовать функцию МАХ для группировки значений в запросе SQL?
У меня есть таблица:
id order timeStamp
0 1 0
1 1 23
2 1 98
3 2 2
4 2 40
5 2 65
Мне нужно написать SQL запрос к ней чтобы в результате была таблица с уникальными order и соответствующими максимальными timeStamp. Что то вроде:
id order timeStamp
2 1 98
5 2 65
Подозреваю что тут надо использовать функцию MAX, но не понимаю как. Помогите пожалуйста
Ответы (2 шт):
Автор решения: Максим Титов
→ Ссылка
SELECT id, order, MAX(timeStamp) AS timeStamp FROM table GROUP BY order
Автор решения: Konstantin
→ Ссылка
Если id не нужен, то можно вот так
SELECT
order,
MAX(timeStamp) timeStamp
FROM
-- your table
GROUP BY
order;
а если с id то вот так
select b2.id, b1.order, b1.timeStamp
from (
SELECT
order,
MAX(timeStamp) timeStamp
FROM
-- your table
GROUP BY
order
)b1
join -- your table b2
on b2.order = b1.order
and b2.timeStamp = b1.timeStamp;