Solutions: 1. SELECT SKU_Code, Weight, CASE WHEN Weight < 0.3 THEN 'Light' WHEN Weight BETWEEN 0.3 AND 0.6 THEN 'Medium' ELSE 'Heavy' END AS Weight_Category FROM Products; 2. SELECT Sale_ID, Gross_Amount, CASE WHEN Gross_Amount > 1000 THEN 'High Value' WHEN Gross_Amount BETWEEN 500 AND 1000 THEN 'Medium Value' ELSE 'Low Value' END AS Value_Category FROM Sales_Transactions; 3. SELECT CASE WHEN pr.Final_MRP BETWEEN 0 AND 500 THEN '0-500' WHEN pr.Final_MRP BETWEEN 501 AND 1000 THEN '501-1000' WHEN pr.Final_MRP BETWEEN 1001 AND 2000 THEN '1001-2000' ELSE '2000+' END AS Price_Range, COUNT(*) AS Product_Count FROM Products p JOIN Pricing pr ON p.SKU_Code = pr.SKU_Code GROUP BY CASE WHEN pr.Final_MRP BETWEEN 0 AND 500 THEN '0-500' WHEN pr.Final_MRP BETWEEN 501 AND 1000 THEN '501-1000' WHEN pr.Final_MRP BETWEEN 1001 AND 2000 THEN '1001-2000' ELSE '2000+' END; 4. 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 Customer_ID, Customer_Name, Total_Spent, CASE WHEN Total_Spent > 5000 THEN 'Platinum' WHEN Total_Spent BETWEEN 2000 AND 5000 THEN 'Gold' ELSE 'Silver' END AS Customer_Tier FROM CustomerSpending; 5. SELECT Operation_ID, Operation_Type, Quantity, CASE WHEN (Operation_Type = 'Inbound' AND Quantity < 10) OR (Operation_Type = 'Outbound' AND Quantity > 50) THEN 'Yes' ELSE 'No' END AS Attention_Needed FROM Warehouse_Ops; 6. SELECT Sale_ID, Gross_Amount, CASE WHEN Gross_Amount > 2000 THEN 0.10 WHEN Gross_Amount BETWEEN 1000 AND 2000 THEN 0.07 ELSE 0.05 END AS Commission_Rate, Gross_Amount * CASE WHEN Gross_Amount > 2000 THEN 0.10 WHEN Gross_Amount BETWEEN 1000 AND 2000 THEN 0.07 ELSE 0.05 END AS Commission_Amount FROM Sales_Transactions; 7. SELECT Sale_ID, Timestamp, CASE WHEN EXTRACT(HOUR FROM Timestamp) BETWEEN 6 AND 11 THEN 'Morning' WHEN EXTRACT(HOUR FROM Timestamp) BETWEEN 12 AND 17 THEN 'Afternoon' WHEN EXTRACT(HOUR FROM Timestamp) BETWEEN 18 AND 23 THEN 'Evening' ELSE 'Night' END AS Time_Category FROM Sales_Transactions; 8. SELECT SKU_Code, Amazon_MRP, Flipkart_MRP, CASE WHEN ABS(Amazon_MRP - Flipkart_MRP) / GREATEST(Amazon_MRP, Flipkart_MRP) > 0.15 THEN 'Yes' ELSE 'No' END AS Is_Inconsistent FROM Pricing; 9. SELECT Operation_ID, Operation_Type, Quantity, CASE WHEN Operation_Type = 'Inbound' AND Quantity > 100 THEN 100 WHEN Operation_Type = 'Outbound' AND Quantity > 50 THEN 50 ELSE 0 END AS Bonus_Amount FROM Warehouse_Ops; 10. WITH CustomerRegions AS ( SELECT c.Customer_ID, CASE WHEN c.Customer_Name LIKE '%Mumbai%' OR c.Customer_Name LIKE '%Delhi%' THEN 'Metro' WHEN c.Customer_Name LIKE '%Bangalore%' OR c.Customer_Name LIKE '%Chennai%' THEN 'Tier 1' ELSE 'Tier 2' END AS Region FROM Customers c ) SELECT Region, COUNT(DISTINCT cr.Customer_ID) AS Customer_Count, SUM(s.Gross_Amount) AS Total_Sales FROM CustomerRegions cr JOIN Sales_Transactions s ON cr.Customer_ID = s.Customer_ID GROUP BY Region; 11. WITH ProductSales AS ( SELECT p.SKU_Code, COALESCE(SUM(s.Quantity), 0) AS Total_Sold FROM Products p LEFT JOIN Sales_Transactions s ON p.SKU_Code = s.SKU_Code GROUP BY p.SKU_Code ) SELECT SKU_Code, Total_Sold, CASE WHEN Total_Sold > 100 THEN 3 WHEN Total_Sold BETWEEN 50 AND 100 THEN 2 ELSE 1 END AS Performance_Score FROM ProductSales; 12. SELECT Sale_ID, Quantity, CASE WHEN Quantity > 5 THEN 0.20 WHEN Quantity BETWEEN 3 AND 5 THEN 0.15 ELSE 0.10 END AS Discount_Rate, Gross_Amount * CASE WHEN Quantity > 5 THEN 0.20 WHEN Quantity BETWEEN 3 AND 5 THEN 0.15 ELSE 0.10 END AS Discounted_Amount FROM Sales_Transactions; 13. WITH ProductTurnover AS ( SELECT s.SKU_Code, AVG(DATEDIFF(s.Date, LAG(s.Date) OVER (PARTITION BY s.SKU_Code ORDER BY s.Date))) AS Avg_Days_Between_Sales FROM Sales_Transactions s GROUP BY s.SKU_Code ) SELECT SKU_Code, Avg_Days_Between_Sales, CASE WHEN Avg_Days_Between_Sales < 30 THEN 'Fast' WHEN Avg_Days_Between_Sales BETWEEN 30 AND 90 THEN 'Medium' ELSE 'Slow' END AS Turnover_Category FROM ProductTurnover; 14. WITH CustomerSpending AS ( SELECT Customer_ID, SUM(Gross_Amount) AS Current_Spend, LAG(SUM(Gross_Amount)) OVER (PARTITION BY Customer_ID ORDER BY EXTRACT(MONTH FROM Date)) AS Previous_Spend FROM Sales_Transactions GROUP BY Customer_ID, EXTRACT(MONTH FROM Date) ) SELECT Customer_ID, Current_Spend, Previous_Spend, ((Current_Spend - Previous_Spend) / Previous_Spend) * 100 AS Pct_Increase, CASE WHEN ((Current_Spend - Previous_Spend) / Previous_Spend) > 2 THEN 'Yes' ELSE 'No' END AS Is_Unusual FROM CustomerSpending WHERE Previous_Spend IS NOT NULL; 15. WITH SalesMetrics AS ( SELECT p.SKU_Code, CASE WHEN COALESCE(SUM(s.Quantity), 0) > 100 THEN 3 WHEN COALESCE(SUM(s.Quantity), 0) BETWEEN 50 AND 100 THEN 2 ELSE 1 END AS Sales_Score FROM Products p LEFT JOIN Sales_Transactions s ON p.SKU_Code = s.SKU_Code GROUP BY p.SKU_Code ), InventoryMetrics AS ( SELECT i.SKU_Code, CASE WHEN i.Stock_Qty > 100 THEN 3 WHEN i.Stock_Qty BETWEEN 50 AND 100 THEN 2 ELSE 1 END AS Inventory_Score FROM Inventory i ), PriceMetrics AS ( SELECT pr.SKU_Code, CASE WHEN pr.Final_MRP > 2000 THEN 3 WHEN pr.Final_MRP BETWEEN 1000 AND 2000 THEN 2 ELSE 1 END AS Price_Score FROM Pricing pr ) SELECT sm.SKU_Code, sm.Sales_Score, im.Inventory_Score, pm.Price_Score, (sm.Sales_Score + im.Inventory_Score + pm.Price_Score) AS Overall_Health FROM SalesMetrics sm JOIN InventoryMetrics im ON sm.SKU_Code = im.SKU_Code JOIN PriceMetrics pm ON sm.SKU_Code = pm.SKU_Code;