>> de primaire sleutel is (DEipUserID+DEipServiceID)
O.k., is de vraag dan onjuist. Omdat per definitie, wanneer u op de primaire sleutel verdeelt, elke enige men is uniek en rijaantal van 1 zal terugkeren.
Terugkerend naar de vraag,
[Voor de eerste rij aan meest islatest komt =1, 2de rij gaat naar de verandering IsLtatest van het prevverslag = 0 en zette IsLatest = 1 voor nieuw verslag.]
En één vraag die u hierboven hebt gehad, ik verdenk u eigenlijk wilt, wat bent de definitie van „2de rij“, bent het „tweede en daarna rijen per DEipUserID+DEipServiceClientID“? Wat er ook het is, verdeling door die combinatie.
; met tmp zoals (
selecteer deipuserid, deipserviceid, het meest islatest, rn=row_number () over (verdeling door deipuserid, deipserviceClientid orde door eipinsertdttm desc) van dbo.FactUserClientUse)
werk tmp plaatsen anders islatest=case wanneer rn=1 toen 1 eind 0 bij