Как я могу заставить SQL Server вернуть первое значение (любой, мне все равно, он просто должен быть быстрым), он возникает при агрегации?
Например, скажем, у меня есть:
ID Group
1 A
2 A
3 A
4 B
5 B
и мне нужно получить любой идентификатор для каждой группы. Я могу сделать это следующим образом:
Select
max(id)
,group
from Table
group by group
который возвращает
ID Group
3 A
5 B
Это делает работу, но мне кажется глупо спросить SQL Server о вычислении самого высокого идентификатора, когда все, что ему действительно нужно сделать, это выбрать первый идентификатор, с которым он сталкивается.
Спасибо
PS - поля индексируются, так что, возможно, это действительно не имеет значения?