Denne forespørgsel vil returner unikke status_id'er, men kun hvis kombinationen af disse status_id og hvert af disse andre felter også er unikt. Du kan vælge de unikke status_id'er, men du kan ikke returnere alle værdier i de andre felter, hvis der er mere end én kombination for hvert status_id.
[rediger]
Hvis du kun vil have den første post for hver status:
select
status_id, schedule_id, cassay_id, time_of_day, days, notify_to_addresses, active
from
(select
row_number() over (partition by status_id order by 1) as number,
status_id, schedule_id, cassay_id, time_of_day, days, notify_to_addresses, active
FROM ordertest)
where
number = 1
I stedet for row_number
, dense_rank
og rank
bruges også til forskellige slags nummerering, men i dette tilfælde vil du virkelig have en enkelt række, og rækkenummer vil være tilstrækkeligt.
Ikke sikker order by
er obligatorisk. Hvis ikke, kan du udelade det. Hvis det er det, kan du angive en dummy-værdi eller angive et specifikt felt, som du vil bruge som 'den første række'. For eksempel, fremskynd order by schedule_id
for at returnere det laveste schedule_id for hvert status_id.