Data Analyst
Opowiedz o swoim zespole: ile osób w nim jest i jacy specjaliści się w niego włączają?
Jakie zadania byłyby dla ciebie interesujące na nowym miejscu pracy?
Jaka jest główna różnica między funkcjami okienkowymi a funkcjami agregującymi z GROUP BY?
Jak dodać pole z obliczonym wskaźnikiem na podstawie istniejącego pola w DataFrame?
Jak pozostawić tylko kategorie, których łączna sprzedaż przekracza 100 rubli?
Jaka jest różnica między HAVING a WHERE?
Należy napisać zapytanie, które zwróci łączne przychody dla każdej kategorii: |prod_cat |total_amt | |Kategoria 1|80 | |Kategoria 2|84 | |Kategoria 3|270 | Istnieje tabela abonentów z zapisami, które pojawiły się w różnych momentach. Data załadowania wpisu jest określona w polu raw_dt: select * from abnt |id |msisdn |tarif_plan_id|account_id|raw_dt | |1 |[phone]|4375 |4979 |[phone]| |1 |[phone]|5842 |4979 |[phone]| |2 |[phone]|5842 |589783|[phone]| |2 |[phone]|4563 |5326 |[phone]| |2 |[phone]|4563 |0832 |[phone]| |3 |[phone]|4563 |0832 |[phone]| |3 |[phone]|5495 |7485 |[phone]| |3 |[phone]|4563 |0832 |[phone]| |3 |[phone]|4563 |0832 |[phone]| Należy napisać zapytanie, które zwróci przedostatni załadowany wpis według klucza id: |id |msisdn |tarif_plan_id|account_id|raw_dt | |1 |[phone]|5842 |4979 |[phone]| |2 |[phone]|4563 |0832 |[phone]| |3 |[phone]|4563 |0832 |[phone]| Istnieje tabela abonentów z historią zmian. Każdy wpis jest ważny w okresie od valid_from_dt do valid_to_dt. Jeśli wpis jest zamknięty, następny zaczyna się tego samego dnia. Dla każdego abonenta powinna istnieć tylko jedna aktywna pozycja w zakresie [valid_from_dt, valid_to_dt]. select * from abnt |id |valid_from_dt|valid_to_dt|msisdn |tarif_plan_id|account_id| |1 |[phone] |[phone] |[phone]|4375 |4979 | |2 |[phone] |[phone] |[phone]|5842 |589783| |2 |[phone] |[phone] |[phone]|4563 |5326 | |3 |[phone] |[phone] |[phone]|4563 |0832 | Należy napisać zapytanie, które zwróci rekordy z nieprawidłową datą zamknięcia: |id |valid_from_dt|valid_to_dt|msisdn |tarif_plan_id|account_id| |2 |[phone] |[phone] |[phone]|5842 |4979 | |2 |[phone] |[phone] |[phone]|4563 |5326 | z ranked as ( select msisdn, tarif_plan_id, account_id, raw_dt, row_number() over (partition by id order by raw_dt desc) as rn ) select id, msisdn, tarif_plan_id, account_id, raw_dt from ranked where rn = 2 order by id
Wymagane jest napisanie zapytania, które zwróci przedostatni załadowany rekord według klucza id: |id |msisdn |tarif_plan_id|account_id|raw_dt | |------------|-----------|-------------|----------|-----------| |[phone]|5842 |4979 |[phone]| |[phone]|4563 |0832 |[phone]| |[phone]|4563 |0832 |[phone]| Istnieje tabela abonentów z historią zmian. Każdy rekord dla abonenta jest ważny w okresie od valid_from_dt do valid_to_dt. Jeśli rekord jest zamknięty, następny zaczyna się tego samego dnia. Dla każdego abonenta powinna istnieć tylko jedna aktywna pozycja w zakresie [valid_from_dt, valid_to_dt]. select * from abnt |id|valid_from_dt|valid_to_dt|msisdn |tarif_plan_id|account_id| |--|-------------|-----------|-------------|-------------|----------| |1 |[phone] |[phone] |[phone] |4375 |4979 | |1 |[phone] |[phone] |[phone] |5842 |4979 | |2 |[phone] |[phone] |[phone] |4563 |5326 | |2 |[phone] |[phone] |[phone] |4563 |0832 | Należy napisać zapytanie, które zwróci rekordy z nieprawidłową datą zamknięcia. |id|valid_from_dt|valid_to_dt|msisdn |tarif_plan_id|account_id| |--|-------------|-----------|-------------|-------------|----------| |1 |[phone] |[phone] |[phone] |5842 |4979 | |2 |[phone] |[phone] |[phone] |4563 |5326 |
Czy masz do nas jakieś pytania?
Jak zaklasyfikować sprzedaż produktów, które nie pasują do żadnej kategorii, do kategorii „Inne”?
Jak zgrupować wartości według jednego pola i jednego wskaźnika w Pandas?
Jak przefiltrować DataFrame według jednego warunku?
Zaproponuj algorytm ustalania dnia urodzin abonenta, mając tylko dziennik połączeń i SMS-ów: numery przychodzące i wychodzące, data i czas, długość i typ zdarzenia.
Jak wyjaśniasz pracownikom o dość tradycyjnych poglądach konieczność wprowadzania innowacji i automatyzacji?
Czy masz termin na przeprowadzkę do Moskwy, czy to jest związane z poszukiwaniem pracy?
Opowiedz więcej o swoim zainteresowaniu agentami AI i automatyzacją — w szczególności o doświadczeniu w uczestnictwie w projekcie chatbota AI: jak była budowana komunikacja z klientem i programistami.
Przedstawione są tabele product (informacje o tym, do jakiej kategorii należy produkt w określonym zakresie dat) oraz sale (dane o sprzedaży produktu z datą sprzedaży, ceną za jednostkę i ilością zakupionych jednostek): select * from product |prod_nm |prod_cat |eff_dt |exp_dt | |--------|---------|-----------|-----------| |Produkt 1|Kategoria 1|[phone]|[phone]| |Produkt 1|Kategoria 2|[phone]|[phone]| |Produkt 2|Kategoria 3|[phone]|[phone]| select * from sale |sale_dt |prod_nm |price|cnt| |----------|---------|-----|---| |[phone]|Produkt 1|10 |5 | |[phone]|Produkt 1|15 |2 | |[phone]|Produkt 4|15 |2 | |[phone]|Produkt 3|15 |2 | |[phone]|Produkt 2|10.9 |300| |[phone]|Produkt 1|12.7 |7 | Należy napisać zapytanie zwracające łączny przychód dla każdej kategorii: |prod_cat |total_amt| |----------|---------| |Kategoria 1|80 | |Kategoria 2|84 | |Kategoria 3|270 |
[imię] opowiedz nam o sobie i czym się zajmujesz.
Jaka jest różnica między funkcjami okienkowymi ROW_NUMBER, RANK i DENSE_RANK?
Opowiedz o typowym dniu pracy i zakresie komunikacji z zespołem (biorąc pod uwagę, że zespół wsparcia liczy około 10-12 osób).