Aktywna wersja rekordu SCD2 w danym dniu
Warstwa DDS Rosbanku to klasyczna hurtownia SCD2 na Greenplum/Postgres. Każdy rekord niesie przedział ważności typu DATERANGE (lewostronnie domknięty): górna granica aktywnej wersji to infinity. Analityk chce uzyskać migawkę każdego kontraktu w danym dniu.
Daj mi migawkę kontraktów na dzień 2024-03-15: dokładnie jeden wiersz na kontrakt — wersję, której przedział valid obejmuje tę datę. Kontrakty, które nie miały aktywnej wersji w tym dniu, należy pominąć. Dla dt_to zwróć upper(valid) lub NULL, gdy górną granicą jest infinity.
Przykładowy oczekiwany wynik
Tak wygląda poprawna odpowiedź — liczba jej wierszy jest swoista i nie musi odpowiadać tabelom ze schematu.
| 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 |
Rosbank
Zaloguj się, aby zobaczyć historię rozwiązań
Zaloguj sięZaloguj się, aby korzystać z Mentora AI
Zaloguj sięFocus radio
Paused · SomaFM · Fluid