Выберите лучшую запись из группы - PullRequest
0 голосов
/ 08 октября 2010

Как из этой таблицы

Name  Code
ABC     Code1
DEF     Code1
GHI     Code2
JKL     Code2
OMN     Code3

получить такой результат:

Name  Code
ABC   Code1
GHI   Code2
OMN   Code3

Есть ли какое-нибудь простое решение?

Ответы [ 4 ]

4 голосов
/ 08 октября 2010
SELECT MIN(Name),Code
FROM Table
GROUP BY Code
3 голосов
/ 08 октября 2010

Я считаю, что вы хотите, чтобы ваши результаты были в алфавитном порядке.

SELECT
         MIN(Name), Code
FROM 
         MyTable 
GROUP BY 
         Code
1 голос
/ 08 октября 2010

, если ваш "TOP" определен как "сначала в алфавитном порядке", вы можете просто использовать простое выражение group by с агрегацией MIN.

SELECT MIN(Col1), Col2 FROM table GROUP BY Col2

в противном случае вам понадобится другой столбец, например, увеличивающийся uniqueid или дата создания.

1 голос
/ 08 октября 2010

ВЫБЕРИТЕ МИН (c1), c2 ИЗ таблицы ГРУППА ПО С2, ЗАКАЗ ПО С2 ASC;

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...