Middle
¿Qué consulta SQL se debe escribir para mostrar todos los usuarios que no hicieron ningún pedido durante todo el año?
sobes.tech AI
Respuesta de la IA
Предположим, есть две таблицы: users (с полем user_id) и orders (с полями user_id и order_date). Нужно вывести всех пользователей, которые не делали заказ за весь год (например, 2023).
Пример SQL-запроса:
SELECT u.*
FROM users u
LEFT JOIN orders o ON u.user_id = o.user_id
AND o.order_date BETWEEN '2023-01-01' AND '2023-12-31'
WHERE o.user_id IS NULL;
Логика:
- Левое соединение
LEFT JOINсвязывает пользователей с их заказами за указанный год. - В условии
WHERE o.user_id IS NULLвыбираются только те пользователи, у которых нет заказов в этом периоде.
Таким образом, запрос возвращает всех пользователей без заказов за весь год.