CREATE TABLE #tblSomething
(ID1 int, ID2 int, Name1 varchar(55), Name2 varchar(55), date1 date, cost int, days int, somefield int);
INSERT INTO #tblSomething
(ID1, ID2, Name1, Name2, date1, cost, days, somefield)
VALUES
(330, 435, 'sn1', 'hello1', '2015-11-17', 500, 12, 34),
(404, 467, 'joe', 'rina', '2015-11-23', 600, 23, 22),
(404, 467, 'joe', 'rina', '2015-11-16', 700, 11, 123),
(404, 468, 'joe', 'tina', '2015-11-23', 800, 23, 41),
(404, 468, 'joe', 'tina', '2015-11-16', 789, 11, 43);
попробовать этот
with res as (select *,ROW_NUMBER() over(partition by ID1, ID2, Name1, Name2 order by ID1, ID2, Name1, Name2) as rn from #tblSomething)
select ID1, ID2, Name1, Name2, date1, cost, days, somefield from res where rn=1
выход
MySQL или SQL-сервера? не могут быть обоим. – DarkKnight
@DarkKnight Фактически, это может быть и то, и другое, если мы дадим чистый запрос ANSI-92 в качестве ответа. Но да, он должен правильно обозначить. –
Почему записи «404 468 joe tina» появляются дважды в результирующем наборе? Если записи '11/16/2015' не будут отфильтрованы по запросу? –