T-SQL с использованием SUM для промежуточного итога
У меня есть простая таблица с некоторыми фиктивными настройками данных, такими как:
|id|user|value|
---------------
1 John 2
2 Ted 1
3 John 4
4 Ted 2
Я могу выбрать промежуточную сумму, выполнив следующую инструкцию sql (MSSQL 2008):
SELECT a.id, a.user, a.value, SUM(b.value) AS total
FROM table a INNER JOIN table b
ON a.id >= b.id
AND a.user = b.user
GROUP BY a.id, a.user, a.value
ORDER BY a.id
Это даст мне результаты, такие как:
|id|user|value|total|
---------------------
1 John 2 2
3 John 4 6
2 Ted 1 1
4 Ted 2 3
Теперь можно получить только самые последние строки для каждого пользователя? Таким образом, результат будет:
|id|user|value|total|
---------------------
3 John 4 6
4 Ted 2 3
Я иду об этом правильным путем? любые предложения или новый путь, которым нужно следовать, было бы здорово!