TGStat
TGStat
Type to search
Advanced channel search
  • flag English
    Site language
    flag Russian flag English flag Uzbek
  • Sign In
  • Catalog
    Channels and groups catalog Regional compilations Thematic compilations Платные каналы Search for channels
    Add a channel/group
  • Ratings
    Rating of channels Rating of groups Posts rating
    Ratings of brands and people
  • Analytics
  • Search by posts
  • Telegram monitoring
  • Promotion
    Advertising through Yandex Business Advertising in channels through TGStat Agency Advertising on TGStat.ru website
Аналитика данных / Data Study

10 Sep, 19:13

Open in Telegram Share Report

Кейс с собеседований на SQL

В истории заказов хранится несколько строк на один order_id с разными статусами и датами обновления. Необходимо оставить строки с последним актуальным статусом, не применяя JOIN.

➡️ Решение: используем ROW_NUMBER(), чтобы пронумеровать версии по дате и взять последнюю актуальную

WITH ranked_orders AS (
SELECT
*,
ROW_NUMBER() OVER (
PARTITION BY order_id
ORDER BY updated_at DESC
) AS rn
FROM orders_history
)
SELECT
order_id,
status,
updated_at,
amount
FROM ranked_orders
WHERE rn = 1;

Оконные функции всегда помогают в работе с историческими данными, выявлением актуальной строки, удалением дублей, а также задачами версионирования строк.

Ставьте реакции, если стоит делиться больше задачами с собесов аналитиков и аналитиков-инженеров

Больше технических заданий на курсе - старт 14 сентября

1.3k 0 13 48
Catalog
Channels and groups catalog Channels compilations Search for channels Add a channel/group
Ratings
Rating of Telegram channels Rating of Telegram groups Posts rating Ratings of brands and people
API
API statistics Search API of posts API Callback
Our channels
@TGStat @TGStat_Chat @telepulse @TGStatAPI
Read
Академия TGStat Telegram Research 2019 Telegram Research 2021 Telegram Research 2023
Contacts
Справочный центр Support Email Jobs
Miscellaneous
Terms and conditions Privacy policy Public offer
Our bots
@TGStat_Bot @SearcheeBot @TGAlertsBot @tg_analytics_bot @TGStatChatBot