Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Простая проблема  [new]
Горленко
Guest
Я только учусь
Есть таблица

Fam      Im    Ot        ID
Иванов   Иван  Иванович  1
Иванов   Иван  Иванович  2
Иванов   Иван  Иванович  3
Петров   Петр  Петрович  1
Петров   Петр  Петрович  2
Сидоров  Сидр  Сидорович 1

Как сгрупировать данные с максимальным ID

Fam      Im    Ot        ID
Иванов   Иван  Иванович  3
Петров   Петр  Петрович  2
Сидоров  Сидр  Сидорович 1


12 май 05, 07:41    [1531552]     Ответить | Цитировать Сообщить модератору
 Re: Простая проблема  [new]
Artny
Guest
SELECT 
         Fam
        ,Im
        ,Ot
        ,max(ID) as ID
FROM 
        YourTableName
GROUP BY 
        Fam, Im, Ot
12 май 05, 07:47    [1531556]     Ответить | Цитировать Сообщить модератору
 Re: Простая проблема  [new]
Горленко
Guest
А если
Есть таблица

Fam      Im    Ot        ID   Dop
Иванов   Иван  Иванович  1    a
Иванов   Иван  Иванович  2    b
Иванов   Иван  Иванович  3    c
Петров   Петр  Петрович  1    a
Петров   Петр  Петрович  2    b
Сидоров  Сидр  Сидорович 1    a

Результат
Fam      Im    Ot        ID   Dop
Иванов   Иван  Иванович  3    c
Петров   Петр  Петрович  2    b
Сидоров  Сидр  Сидорович 1    a

Тут как группировать ???
DISTINCT не подойдет ???
12 май 05, 09:33    [1531734]     Ответить | Цитировать Сообщить модератору
 Re: Простая проблема  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
В данном конкретном случае - хватит и MAX(Dop), а вот если Dop тащить именно из той строки, где MAX(ID), без подзапроса не обойтись, ИМХО.
12 май 05, 09:37    [1531748]     Ответить | Цитировать Сообщить модератору
 Re: Простая проблема  [new]
Smirnov Anton
Member

Откуда: Н.Новгород
Сообщений: 3220
SELECT t1.* from YourTableName t1 join (
SELECT  Fam,Im,Ot,max(ID) as ID
FROM  YourTableName
GROUP BY Fam, Im, Ot) t2 on t1.Fam=t2.Fam and t1.Im=t2.Im and t1.Ot=t2.Ot and t1.Id=t2.Id
12 май 05, 09:40    [1531761]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить