**Контекст:** Интернет-магазин хочет оценить долю возвратов по категориям товаров, чтобы выявить проблемные направления и улучшить описания или качество товаров.
**Данные:**
[см. код в задании]
**Задание:**
1. Для каждой категории товаров рассчитайте: общее количество заказов, количество возвратов и процент возвратов
2. Выведите также суммарную сумму возвратов (refund_amount) по категории
3. Учитывайте заказы за последние 6 месяцев
4. Отсортируйте по проценту возвратов по убыванию
Структура для ориентира — реальные значения из эталонного решения.
CREATE TABLE orders (
id SERIAL PRIMARY KEY,
user_id INT NOT NULL,
product_id INT NOT NULL,
product_category VARCHAR(100) NOT NULL, -- 'Электроника', 'Одежда', 'Дом и сад', ...
quantity INT NOT NULL,
total_price NUMERIC(10,2) NOT NULL,
ordered_at TIMESTAMP NOT NULL
);
CREATE TABLE returns (
id SERIAL PRIMARY KEY,
order_id INT REFERENCES orders(id),
reason VARCHAR(200) NOT NULL, -- 'брак', 'не подошёл размер', 'не соответствует описанию', ...
returned_at TIMESTAMP NOT NULL,
refund_amount NUMERIC(10,2) NOT NULL
);
LEFT JOIN COUNT проценты ROUND
Это задание для уровня Junior. Подходит для начинающих аналитиков, проверяет базовые знания SQL/Python/статистики.
Подобные задания в категории «SQL» регулярно дают на собеседованиях аналитика данных в Яндекс, Сбер, Ozon, Авито, Тинькофф, Wildberries, T-Bank, X5, ВТБ и других крупных IT-компаниях. Тематика: LEFT JOIN, COUNT, проценты, ROUND.
На реальном собеседовании на подобную задачу отводится 5-10 минут — проверяется скорость и базовая грамотность. Для тренировки рекомендуем сначала решить самостоятельно, потом сверить с эталонным решением и подсказками.
На zasqlpython.ru есть 425 SQL задач в песочнице с автопроверкой кода, конспекты SQL для аналитика, AI мок-собеседование с разбором ваших ответов.
← Все задания