sql >> Database >  >> RDS >> Sqlserver

Hoe het eerste record uit elke groep te halen uit het resultaat dat is opgehaald met behulp van group by command

declare @T table (ID int, GroupID int, Qty int)
insert into @T values
(1, 1, 100),
(2, 1, 200),
(3, 1, 300),
(4, 2, 98),
(5, 2, 198),
(6, 3, 175),
(7, 3, 275),
(8, 3, 375),
(9, 4, 215)

;with cte as
(
  select
    ID,
    GroupID,
    Qty,
    rank() over(partition by GroupID order by ID) as rn
  from @T
)  
select ID, GroupID, Qty
from cte
where rn = 1


  1. SQL UPDATE met subquery die verwijst naar dezelfde tabel in MySQL

  2. Hoe geld op te maken in PostgreSQL

  3. Hoe array-basistype in postgres te krijgen via jdbc

  4. Haal het laatste record van elke maand in MySQL....?