slette den nyeste rad i BK

stemmer
-1

Jeg har i tabellen politikk, der BK for dem er

VIN + ProgramCode + ValidFrom

Oppbygging av tabellen er

ID, ProgramCode, VIN, ValidFrom, CreationDate

Problemet er at jeg trenger å holde bare politikken med en unik VINog den siste verdien av Creation_date, må resten skal slettes. Jeg har ikke en anelse om hva spørringen jeg bør bruke for det ved hjelp av gruppen ved.

Publisert på 19/09/2018 klokken 13:35
kilden bruker
På andre språk...                            


1 svar

stemmer
0

bruke vindusfunksjon row_number

delete from
    (
    select * ,row_number() over(partition by ProgramCode, VIN, ValidFrom order by Creation_date desc) as rn
    ) as t where t.rn!=1

Merk: for store datasett som det er bedre å holde Unike data i nye bord og deretter slette gamle bordet da endre navn på den nye tabellen i gamle navn

Svarte 19/09/2018 kl. 13:37
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more