Вывод уникальных клиентов - MySQL

Узнай цену своей работы

Формулировка задачи:

Добрый день! Прошу помочь. Есть три таблицы в базе данных: purchases: - id - ID покупки - price - сумма чека - user_id - ID пользвователя - purchase_date - время и дата пробития чека purchase_positions: - id - ID строки чека - purchase_id - ID покупки - product_id - ID товара - quantity - количество (в ед. измерения) данного товара в этой строке чека products: - id - ID товара - name - наименование (строка) - sku - SKU товара (строка) Не могу сообразить как написать запрос, который бы выбрал список уникальных клиентов, которые совершили покупку с 2017-01-01 11:00 по 2017-02-16 12:00, при этом в чеках должен иметься хотя бы один товар с SKU 'AAA', 'BBB' или 'CCC'?

Решение задачи: «Вывод уникальных клиентов»

textual
Листинг программы
SELECT DISTINCT user_id
FROM
  purchases
  JOIN purchase_positions pp ON purchases.Id = pp.purchase_id 
  JOIN products ON products.Id = pp.product_id 
WHERE
  purchases.purchase_date BETWEEN  '2017-01-01 11:00' AND '2017-02-16 12:00' AND 
  products.SKU IN ('AAA', 'BBB', 'CCC')

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 4.167 из 5