Aktyvi SCD2 įrašo versija nurodytą datą
Rosbank DDS sluoksnis — tai klasikinė SCD2 saugykla ant Greenplum/Postgres. Kiekvienas įrašas turi DATERANGE galiojimo intervalą (pusiau atvirą): aktyvios versijos viršutinė riba yra infinity. Analitikas nori gauti visų sutarčių momentinį vaizdą nurodytą datą.
Pateik sutarčių momentinį vaizdą 2024-03-15 datai: tiksliai po vieną eilutę kiekvienai sutarčiai — tą versiją, kurios valid intervalas apima šią datą. Sutartys, kurios tą datą neturėjo nė vienos aktyvios versijos, į rezultatą neįtraukiamos. dt_to lauke grąžink upper(valid) arba NULL, kai viršutinė riba yra begalybė.
Laukiamo rezultato pavyzdys
Taip atrodo teisingas atsakymas — jo eilučių skaičius yra savitas, jis neprivalo sutapti su schemos lentelėmis.
| dt_to | status | dt_from | rate_pct | contract_id |
|---|---|---|---|---|
| 2024-04-01 | OPEN | 2024-02-01 | 11.00 | 401 |
| NULL | OPEN | 2024-01-15 | 9.90 | 402 |
| 2024-04-15 | OPEN | 2024-03-15 | 7.50 | 405 |
Prisijunkite, kad matytumėte pateikimų istoriją
PrisijungtiPrisijunkite, kad naudotumėte DI mentorių
Prisijungti