Guest User

U132

a guest
Jan 7th, 2018
341
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.95 KB | None | 0 0
  1. --U132
  2. CREATE TABLE products
  3. AS SELECT id FROM generate_series(1, 5) AS seq(id);
  4.  
  5. CREATE TABLE sellers
  6. (email varchar);
  7.  
  8. INSERT INTO sellers
  9. VALUES ('[email protected]'),
  10.  
  11. CREATE TABLE sales
  12. (id serial, kedy timestamp, price numeric, product_id integer, seller_id varchar);
  13.  
  14. INSERT INTO sales (kedy, price, product_id, seller_id)
  15. SELECT
  16. TIMESTAMP '2011-11-11' + floor((random() * 60)) * INTERVAL '1 day',
  17. floor(random() * 50 + 5)::numeric AS price,
  18. products.id AS product_id,
  19. sellers.email AS seller_id
  20. FROM products, sellers
  21. WHERE random() > 0.1;
  22.  
  23. CREATE VIEW monthly_sales AS
  24. SELECT date_part('year', s.kedy) AS rok,
  25. date_part('month', s.kedy) AS mesiac,
  26. s.seller_id,
  27. sum(s.price) AS total_price
  28. FROM sales s
  29. GROUP BY rok, mesiac, s.seller_id;
  30.  
  31. SELECT * FROM monthly_sales ORDER BY seller_id;
  32.  
  33. ---
Advertisement
Add Comment
Please, Sign In to add comment