Advertisement
Guest User

Untitled

a guest
Oct 18th, 2019
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.26 KB | None | 0 0
  1. #A
  2. SELECT ROUND(AVG(month_price),2) FROM(
  3. SELECT AVG(price) as month_price, EXTRACT(month FROM data) month FROM purchases p
  4. JOIN items i on p.itemid = i.itemid WHERE userid IN (
  5. SELECT userid FROM users WHERE age BETWEEN 18 AND 25
  6. ) GROUP BY month
  7. ) as a ;
  8.  
  9.  
  10. SELECT ROUND(AVG(month_price),2) FROM(
  11. SELECT AVG(price) as month_price, EXTRACT(month FROM data) m FROM purchases p
  12. JOIN items i on p.itemid = i.itemid WHERE userid IN (
  13. SELECT userid FROM users WHERE age BETWEEN 26 AND 35
  14. ) GROUP BY m
  15. ) as a ;
  16.  
  17. SELECT month FROM (
  18. SELECT EXTRACT(month FROM date) month, SUM(items.price) price_month FROM purchases p
  19. JOIN items i ON p.itemid = i.itemid
  20. JOIN users u ON p.userid = u.userid
  21. WHERE u.age >= 35 GROUP BY month
  22. ) AS a ORDER BY a.price_month DESC LIMIT 1 ;
  23.  
  24.  
  25. SELECT top_item FROM (
  26. SELECT i.itemid top_item, SUM(i.price) f_price FROM items i
  27. JOIN purchases p ON p.itemid = i.itemid
  28. WHERE date > ( now()- interval '1 year') GROUP BY top_item
  29. ) ORDER BY f_price DESC LIMIT 1 ;
  30.  
  31. SELECT a.top, CONCAT(a.f_price*100/(SELECT SUM(price) FROM items), '%') AS percent FROM (
  32. SELECT i.itemid AS top, SUM(price) AS f_price FROM items i
  33. JOIN purchases p ON i.itemid = p.itemid
  34. GROUP BY top ORDER BY f_price DESC
  35. ) AS a LIMIT 3;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement