Sobes.tech

Data Engineer

JOIN түрлері және олардың айырмашылықтары

Middle
RedLab
31

Кесте 'clients' (client_id, толық аты, басталу күні, аяқталу күні) және 'transactions' (transaction_id, client_id, күн, сома) берілген. 2025 жылдың 1 мамырында әр клиенттің транзакция сомасын есептейтін SQL сұрауын жазыңыз және client_id, толық аты және соманы шығарыңыз.

Middle
СБЕРСБЕР
31

Жобаңызда docs/ каталогында орналасқан құжаттама үшін субмодуль пайдаланылады. Бұл субмодульдің қашықтағы репозиторийінде (мысалы, release тармағында) маңызды жаңартулар пайда болғанын білдіңіз. Бұл өзгерісті соңғы нұсқаға жаңарту және оны commit-ке дайындау үшін қандай команда қолданасыз?

Junior
01.tech
31

Деректер қазір қалай өңделеді? Егер олар әртүрлі форматта болса, олар қалай нормалданады және бір формаға келтіріледі?

Senior
ооо УК Арбат
31

Дерекқор схемасын әдетте қалай жасайтын едің — тікелей дерекқорда қолмен бе, әлде сценарийлерді қайда сақтайтын едің, немесе мүлде Liquibase-те отырдың ба, қандай процесс болды?

Middle
МВидеоМВидео
31

Join орындаудың қандай физикалық стратегияларын білесіз?

Middle
ОстровокОстровок
31

Транзакциялар кестесі мен күнтізбе кестесін қосқанда қай физикалық механизм JOIN қолданылатын болады (бұл шарт бойынша: күн <= күн)?

Middle+
ПАО Сбербанк
31

Ішкі цикл қосылу қалай жұмыс істейді және оның алгоритмдік күрделілігі қандай? Басқа үш алгоритмнің күрделілігі қандай?

Middle+
СБЕРСБЕР
31

Airflow DAG-тан басқа Python-да не жаздың?

Middle
МВидеоМВидео
31

уақыт белдеуімен уақыт белгісі

Junior
01.tech
31

Транзакция оқшаулау деңгейлері деген ұғым бар. Бұл туралы не білесіз?

Middle
Леман про
31

find_mode функциясы [1, 2, 3, 3, 4, 5] тізімі үшін не қайтарады? Қадам-қадам түсіндір.

Middle
СБЕРСБЕР
30

Бірлік тестілерін жаздыңыз ба? Мұндай тәжірибеңіз бар ма?

Middle
ютэйр
30

Бізде тапсырыстар саны бойынша ORDER BY бар, екі тапсырыс 5-ке, тағы екі тапсырыс 3-ке тең. RANK() және DENSE_RANK() қалай әрекет етеді?

Middle
Альфа-БанкАльфа-Банк
30

Құжаттама жазу тәжірибеңіз бар ма?

Middle
ютэйр
30

Greenplum-та кәдімгі MySQL және басқа диалектілерде жоқ қандай функциялар мен мүмкіндіктер бар?

Middle
Альфа-БанкАльфа-Банк
30

Деректер витриндарын есептеу үшін деректер құбырларын құру бойынша сіздің тәжірибеңіз бен түсінігіңіз қандай?

Middle
Леман про
30

Топ үшін процестерді немесе құралдарды жақсартқан мысал келтіре аласыз ба?

Middle
Островок.Ostrovok!Tech
30

ClickHouse-тың Distributed қозғалтқышының қандай параметрлерімен таныссыз?

Middle
АНО ЦИСМ
30

2021 жылы «Киім» санатында және 2022 жылы «Табыс» санатында тапсырыстар мен «қажетті санаттағы тауарлар» санын шығарыңыз (жалпы түрі: 2 жол. Аралықтар: жыл, тауарлар саны, тапсырыстар саны) with cte as( select year(o.order_date) as year_orders, g.cat_1, count(distinct o.order_id) as count_orders, sum(g.quantity) as count_quan from Orders o join Goods g on o.order_id = g.order_id where (g.cat_1 = 'Киім' and Year(o.order_date) = 2021) or (g.cat_1 = 'Табыс' and Year(o.order_date) = 2022) group by year_orders, g.cat_1 ) select year_orders, count_quan, count_orders from cte 2025 жылы әр санаттағы ең көп сатылымдар бойынша топ-3 модельдер with cte as( select cat_1, price, quantity, model, rank() over(partition by cat_1) as rk from Orders o join Goods g on o.order_id = g.order_id where Year(o.order_date) = 2025 ) 2025 жылы әр санаттағы сатылымдардың сомасы бойынша топ-3 модельдер with cte as( select g.cat_1, g.model, (price * quantity), rank() over(partition by cat_1) as rk from Orders o join Goods g on o.order_id = g.order_id where Year(o.order_date) = 2025 ) with cte as( select g.cat_1, g.model, sum(price * quantity) as sum_, rank() over(partition by g.cat_1 order by sum() desc) as rk from Orders o join Goods g on o.order_id = g.order_id where Year(o.order_date) = 2025 ) with cte1 as( select g.cat_1, g.model, sum(price * quantity) as sum_total, from Orders o join Goods g on o.order_id = g.order_id where Year(o.order_date) = 2025 ), cte2 as(select g.cat_1, g.model, sum_total, rank() over(partition by g.cat_1 order sum_total desc) as rk from cte1 ) select g.cat_1, g.model, sum_total from cte2 where rk <=3 with cte1 as( select g.cat_1 as cat_name, g.model as model, sum(price * quantity) as sum_total, from Orders o join Goods g on o.order_id = g.order_id where Year(o.order_date) = 2025 group by Year(o.order_date), g.model ), cte2 as(select cat_name, model, sum_total, rank() over(partition by cat_name order sum_total desc) as rk from cte1 ) select cat_name, model, sum_total from cte2 where rk <=3

Middle
Объединённая компания Wildberries и Russ
30
/32