Solutions: 1. SELECT AVG(Weight) AS Avg_Weight FROM Products; 2. WITH AvgWeight AS ( SELECT AVG(Weight) AS avg_val FROM Products ) SELECT SKU_Code, Design_No, Weight FROM Products, AvgWeight WHERE Weight > avg_val; 3. SELECT c.Customer_ID, c.Customer_Name, SUM(s.Gross_Amount) AS Total_Spent FROM Customers c JOIN Sales_Transactions s ON c.Customer_ID = s.Customer_ID GROUP BY c.Customer_ID, c.Customer_Name HAVING SUM(s.Gross_Amount) > (SELECT AVG(Gross_Amount) FROM Sales_Transactions); 4. WITH MonthlySales AS ( SELECT EXTRACT(MONTH FROM Date) AS Month, SUM(Gross_Amount) AS Total_Sales FROM Sales_Transactions GROUP BY EXTRACT(MONTH FROM Date) ) SELECT * FROM MonthlySales; 5. SELECT i.SKU_Code, (i.Stock_Qty * p.TP_Price) AS Inventory_Value FROM Inventory i JOIN Pricing p ON i.SKU_Code = p.SKU_Code WHERE (i.Stock_Qty * p.TP_Price) > ( SELECT AVG(Stock_Qty * TP_Price) FROM Inventory JOIN Pricing ON Inventory.SKU_Code = Pricing.SKU_Code ); 6. WITH CustomerSpending AS ( SELECT c.Customer_ID, c.Customer_Name, SUM(s.Gross_Amount) AS Total_Spent FROM Customers c JOIN Sales_Transactions s ON c.Customer_ID = s.Customer_ID GROUP BY c.Customer_ID, c.Customer_Name ) SELECT *, RANK() OVER (ORDER BY Total_Spent DESC) AS Rank FROM CustomerSpending; 7. SELECT p.SKU_Code, p.Design_No FROM Products p WHERE NOT EXISTS ( SELECT DISTINCT EXTRACT(MONTH FROM Date) FROM Sales_Transactions WHERE EXTRACT(MONTH FROM Date) NOT IN ( SELECT DISTINCT EXTRACT(MONTH FROM Date) FROM Sales_Transactions s WHERE s.SKU_Code = p.SKU_Code ) ); 8. WITH SalesWithTotal AS ( SELECT Sale_ID, Date, Gross_Amount, SUM(Gross_Amount) OVER (ORDER BY Date) AS Running_Total FROM Sales_Transactions ) SELECT * FROM SalesWithTotal; 9. SELECT SKU_Code, Design_No FROM Products p WHERE NOT EXISTS ( SELECT 1 FROM Sales_Transactions s WHERE s.SKU_Code = p.SKU_Code ); 10. WITH RECURSIVE CategoryHierarchy AS ( SELECT Category, 1 AS Level FROM Products WHERE Category NOT LIKE '%-%' UNION ALL SELECT p.Category, ch.Level + 1 FROM Products p JOIN CategoryHierarchy ch ON p.Category LIKE CONCAT(ch.Category, '-%') ) SELECT * FROM CategoryHierarchy; 11. SELECT c.Customer_ID, c.Customer_Name FROM Customers c WHERE NOT EXISTS ( SELECT p.Category FROM Products p WHERE NOT EXISTS ( SELECT 1 FROM Sales_Transactions s WHERE s.Customer_ID = c.Customer_ID AND s.SKU_Code IN ( SELECT SKU_Code FROM Products WHERE Category = p.Category ) ) ); 12. WITH ProductSales AS ( SELECT p.SKU_Code, p.Design_No, SUM(s.Gross_Amount) AS Total_Sales FROM Products p LEFT JOIN Sales_Transactions s ON p.SKU_Code = s.SKU_Code GROUP BY p.SKU_Code, p.Design_No ), TotalSales AS ( SELECT SUM(Gross_Amount) AS total FROM Sales_Transactions ) SELECT ps.SKU_Code, ps.Design_No, ROUND((ps.Total_Sales / ts.total) * 100, 2) AS Pct_Total_Sales FROM ProductSales ps, TotalSales ts; 13. WITH PriceConsistency AS ( SELECT SKU_Code, CASE WHEN Amazon_MRP = Flipkart_MRP AND Flipkart_MRP = Myntra_MRP THEN 'Yes' ELSE 'No' END AS Is_Consistent FROM Pricing ) SELECT * FROM PriceConsistency; 14. WITH CategoryAverages AS ( SELECT p.Category, AVG(s.Gross_Amount) AS Avg_Spending FROM Sales_Transactions s JOIN Products p ON s.SKU_Code = p.SKU_Code GROUP BY p.Category ), CustomerCategorySpending AS ( SELECT c.Customer_ID, c.Customer_Name, p.Category, SUM(s.Gross_Amount) AS Total_Spent FROM Customers c JOIN Sales_Transactions s ON c.Customer_ID = s.Customer_ID JOIN Products p ON s.SKU_Code = p.SKU_Code GROUP BY c.Customer_ID, c.Customer_Name, p.Category ) SELECT ccs.* FROM CustomerCategorySpending ccs JOIN CategoryAverages ca ON ccs.Category = ca.Category WHERE ccs.Total_Spent > ca.Avg_Spending; 15. WITH ProductPairs AS ( SELECT a.SKU_Code AS Product1, b.SKU_Code AS Product2, COUNT(*) AS Frequency FROM Sales_Transactions a JOIN Sales_Transactions b ON a.Sale_ID = b.Sale_ID AND a.SKU_Code < b.SKU_Code GROUP BY a.SKU_Code, b.SKU_Code HAVING COUNT(*) > 1 ) SELECT CONCAT(Product1, ' + ', Product2) AS Product_Pair, Frequency FROM ProductPairs ORDER BY Frequency DESC;