Подзапросы. Сколько разных товаров заказывал каждый покупатель (по ФИО) в 1995 году?

Для решения данной задачи, нам потребуется написать SQL запрос, используя подзапросы.

Сначала, нам необходимо создать две таблицы в базе данных. Одна таблица будет содержать информацию о заказах (назовем ее "Orders"), а другая будет содержать информацию о покупателях (назовем ее "Customers"). Предполагается, что у нас уже есть таблицы и они содержат необходимые данные.

В таблице "Orders" должны быть следующие поля:
- order_id - уникальный идентификатор заказа
- customer_id - уникальный идентификатор покупателя
- product_id - уникальный идентификатор товара
- order_date - дата заказа

В таблице "Customers" должны быть следующие поля:
- customer_id - уникальный идентификатор покупателя
- first_name - имя покупателя
- last_name - фамилия покупателя

Теперь, чтобы узнать, сколько разных товаров заказывал каждый покупатель в 1995 году, можно использовать следующий SQL запрос:

SELECT c.first_name, c.last_name, COUNT(DISTINCT o.product_id) as total_products
FROM Customers c
JOIN Orders o ON c.customer_id = o.customer_id
WHERE YEAR(o.order_date) = 1995
GROUP BY c.first_name, c.last_name;

Давайте разберем этот запрос по шагам:

1. Мы выбираем имена и фамилии покупателей (first_name и last_name), а также количество уникальных товаров, которые они заказали. Количество уникальных товаров мы определяем с помощью функции COUNT(DISTINCT o.product_id).

2. Мы объединяем таблицы "Customers" и "Orders" по идентификатору покупателя (customer_id), чтобы связать покупателей с их заказами.

3. Мы добавляем условие WHERE YEAR(o.order_date) = 1995, чтобы выбрать только заказы, сделанные в 1995 году.

4. Наконец, мы группируем результаты по именам и фамилиям покупателей, используя GROUP BY c.first_name, c.last_name.

Таким образом, выполнение этого запроса вернет таблицу со следующими столбцами:
- first_name - имя покупателя
- last_name - фамилия покупателя
- total_products - общее количество разных товаров, которые покупатель заказал в 1995 году.

Надеюсь, эта информация была полезной и помогла вам решить вашу задачу.