T-SQL: Выбор столбца на основе MAX (другой столбец)

Я надеюсь, что есть простой способ сделать это без использования подзапроса:

Сценарий: У вас есть " TableA »со столбцами« Ключ »,« Подключ »и« Значение ». Мне нужно получить «Значение» MAX («Подключа») для данного «Ключа».

Итак, если таблица содержит строки:

KEY SUBKEY VALUE
1   1      100
1   2      200
1   3      300

Для Key = 1 мне нужно значение 300. Я был надеясь сделать что-то вроде этого:

SELECT
  VALUE
FROM
  TableA
WHERE
  Key = 1
HAVING
  SubKey = MAX(SubKey)

Но это недопустимо. Есть ли способ сделать это, не выполняя «WHERE SubKey = (подзапрос для максимального подключ)»?

36
задан Tom H 9 September 2010 в 20:33
поделиться