Работа вам нужна срочно. Не волнуйтесь, уложимся!
- 22423 авторов готовы помочь тебе.
- 2402 онлайн
Запросы
Предмет: Информатика
Раздел: Работа с базами данных, SQL-запросы, аналитика логистики
Разберем каждый из запросов подробно.
Задача: Найти города с наибольшей логистической нагрузкой, включая текущие маршруты и успешно завершенные доставки.
SQL-Запрос (пример):
SELECT
city,
COUNT(*) AS total_deliveries,
SUM(CASE WHEN status = 'в пути' THEN 1 ELSE 0 END) AS active_routes,
SUM(CASE WHEN status = 'доставлено' THEN 1 ELSE 0 END) AS completed_deliveries
FROM
deliveries
GROUP BY
city
ORDER BY
total_deliveries DESC;
Пояснение:
Задача: Найти доставки, которые длились более 3 дней, и связать их с погодными условиями. Отсортировать по длительности маршрута.
SQL-Запрос (пример):
SELECT
d.delivery_id,
d.city,
DATEDIFF(d.delivery_date, d.shipment_date) AS duration_days,
w.weather_condition
FROM
deliveries d
JOIN
weather w ON d.city = w.city AND DATE(d.delivery_date) = w.date
WHERE
DATEDIFF(d.delivery_date, d.shipment_date) > 3
ORDER BY
duration_days DESC;
Пояснение:
Задача: Найти разницу между доступным количеством подарков и требуемым для доставок в статусе "сборка". Отсортировать по возрастанию разницы.
SQL-Запрос (пример):
SELECT
p.product_id,
p.product_name,
p.available_quantity,
COALESCE(SUM(r.required_quantity), 0) AS total_required,
(p.available_quantity - COALESCE(SUM(r.required_quantity), 0)) AS difference
FROM
products p
LEFT JOIN
required_items r ON p.product_id = r.product_id
LEFT JOIN
deliveries d ON r.delivery_id = d.delivery_id
WHERE
d.status = 'сборка'
GROUP BY
p.product_id, p.product_name, p.available_quantity
ORDER BY
difference ASC;
Пояснение:
Если у тебя есть структура таблиц или пример данных, могу адаптировать запросы более точно.