Middle
30
Шарт Мындай маалымат схемасы менен базасы бар // колдонуучу id | атуу | фамилиясы | туулган күнү 1 | Ivan | Petrov | [телефон] | Anna | Petrova | [телефон] | Anna | Petrova | [телефон] // сатып алуу sku | баа | user_id | дата 1 | 5500 | 1 | [телефон] | 5700 | 1 | [телефон] | 4000 | 1 | [телефон] | 8000 | 2 | [телефон] | 400 | 2 | [телефон] // тыюу_тизмеси user_id | башталган_дат 1 | [телефон] Керек: 1. Тыюу салынганга чейин колдонуучулар тарабынан жасалган бардык сатып алуулар үчүн колдонуучу жана продукт IDнин уникалдуу комбинацияларын көрсөтүңүз. Биринчиден колдонуучунун аты боюнча, андан кийин SKU боюнча сорттоо 2. 5000 рублдан ашык суммада сатып алуу жасаган колдонуучуларды табыңыз. Атын төмөнкү форматта көрсөтүңүз: user_id | аты | фамилиясы | сатып алуулар суммасы
Кайсыл жерде компаниялар сурады
AIден жооп
sobes.tech AI
Для решения задачи на SQL:
- Вывести уникальные комбинации пользователя и id товара для покупок, совершённых до бана, отсортировать по имени пользователя и SKU:
SELECT DISTINCT u.firstname, u.lastname, p.sku
FROM purchase p
JOIN user u ON p.user_id = u.id
LEFT JOIN ban_list b ON p.user_id = b.user_id
WHERE b.date_from IS NULL OR p.date < b.date_from
ORDER BY u.firstname, p.sku;
- Найти пользователей, сумма покупок которых больше 5000, и вывести id, имя, фамилию и сумму:
SELECT u.id, u.firstname, u.lastname, SUM(p.price) AS total_spent
FROM user u
JOIN purchase p ON u.id = p.user_id
GROUP BY u.id, u.firstname, u.lastname
HAVING SUM(p.price) > 5000;
Если нужно на Python, то можно использовать ORM или raw SQL-запросы с библиотекой, например, psycopg2 или SQLAlchemy, чтобы получить эти данные и вывести в нужном формате.