Я пытаюсь выбрать отдельные (последние обновленные) строки из таблицы в моей базе данных. Я пытаюсь получить последнюю обновленную строку для каждого «Подраздела». Однако я не могу найти способ добиться этого.
Таблица выглядит так:
ID | Name |LastUpdated | Section | Sub |
1 | Name1 | 2013-04-07 16:38:18.837 | 1 | 1 |
2 | Name2 | 2013-04-07 15:38:18.837 | 1 | 2 |
3 | Name3 | 2013-04-07 12:38:18.837 | 1 | 1 |
4 | Name4 | 2013-04-07 13:38:18.837 | 1 | 3 |
5 | Name5 | 2013-04-07 17:38:18.837 | 1 | 3 |
Я пытаюсь заставить свой оператор SQL возвращать строки:
1, 2 и 5.
Они различны для Sub и самых последних.
Я пытался:
SELECT DISTINCT Sub, LastUpdated, Name
FROM TABLE
WHERE LastUpdated = (SELECT MAX(LastUpdated) FROM TABLE WHERE Section = 1)
Что возвращает только отдельную строку для самой последней обновленной строки. В этом есть смысл.
Я погуглил, что пытаюсь, и проверил соответствующие сообщения здесь. Однако не удалось найти тот, который действительно отвечает на то, что я пытаюсь.