Assignment7 Answers
Assignment7 Answers
SELECT
p.ProductName,
s.SupplierName,
p.UnitPrice
FROM
Products p
JOIN
SELECT
DISTINCT c.CustomerID,
o.OrderDate
FROM
Customers c
JOIN
WHERE
YEAR(o.OrderDate) = 2023;
SELECT
c.CategoryName,
s.SupplierName
FROM
Categories c
JOIN
JOIN
GROUP BY
c.CategoryName, s.SupplierName;
SELECT
p.ProductName
FROM
Products p
LEFT JOIN
WHERE
od.OrderID IS NULL;
5. Customers with Purchases from >3 Categories and Avg Order Value > $500
SELECT
c.CustomerID
FROM
Customers c
JOIN
JOIN
GROUP BY
c.CustomerID
HAVING
SELECT
c.CategoryName,
SUM(od.Quantity) AS TotalSold
FROM
Categories c
JOIN
JOIN
GROUP BY
c.CategoryName;
SELECT
c.CustomerID
FROM
Customers c
LEFT JOIN
Orders o ON c.CustomerID = o.CustomerID
WHERE
o.OrderID IS NULL;
SELECT
c.CustomerID,
o.OrderID,
o.OrderDate,
o.ShippedDate
FROM
Customers c
JOIN
SELECT
o.OrderID,
FROM
Orders o
WHERE
SELECT
s.SupplierName,
SUM(od.Quantity) AS TotalSold
FROM
Suppliers s
JOIN
JOIN
GROUP BY
s.SupplierName
ORDER BY
TotalSold DESC;
10. Products Sold by Each Supplier and Suppliers Not Sold Any Products
SELECT
s.SupplierName,
COUNT(od.ProductID) AS ProductsSold
FROM
Suppliers s
LEFT JOIN
LEFT JOIN
GROUP BY
s.SupplierName;
11. Customers Who Purchased Products from More than One Category
SELECT
c.CustomerID
FROM
Customers c
JOIN
JOIN
JOIN
GROUP BY
c.CustomerID
HAVING
SELECT
e.EmployeeID
FROM
Employees e
JOIN
LEFT JOIN
LEFT JOIN
GROUP BY
e.EmployeeID
HAVING
COUNT(o.OrderID) > 5
SELECT
c.CustomerID
FROM
Customers c
JOIN
JOIN
WHERE
YEAR(o.OrderDate) = 2023
GROUP BY
c.CustomerID
HAVING
SELECT
e.EmployeeID,
FROM
Employees e
JOIN
Orders o ON e.EmployeeID = o.EmployeeID
JOIN
JOIN
GROUP BY
e.EmployeeID
HAVING