store_sales.sql 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. create database if not exists ${DB};
  2. use ${DB};
  3. drop table if exists store_sales;
  4. create table store_sales
  5. (
  6. ss_sold_date_sk int,
  7. ss_sold_time_sk int,
  8. ss_item_sk int,
  9. ss_customer_sk int,
  10. ss_cdemo_sk int,
  11. ss_hdemo_sk int,
  12. ss_addr_sk int,
  13. ss_store_sk int,
  14. ss_promo_sk int,
  15. ss_ticket_number int,
  16. ss_quantity int,
  17. ss_wholesale_cost float,
  18. ss_list_price float,
  19. ss_sales_price float,
  20. ss_ext_discount_amt float,
  21. ss_ext_sales_price float,
  22. ss_ext_wholesale_cost float,
  23. ss_ext_list_price float,
  24. ss_ext_tax float,
  25. ss_coupon_amt float,
  26. ss_net_paid float,
  27. ss_net_paid_inc_tax float,
  28. ss_net_profit float
  29. )
  30. partitioned by (ss_sold_date string)
  31. clustered by (ss_item_sk) sorted by (ss_item_sk) into ${BUCKETS} buckets
  32. stored as ${FILE};
  33. insert overwrite table store_sales partition (ss_sold_date)
  34. select
  35. ss.ss_sold_date_sk,
  36. ss.ss_sold_time_sk,
  37. ss.ss_item_sk,
  38. ss.ss_customer_sk,
  39. ss.ss_cdemo_sk,
  40. ss.ss_hdemo_sk,
  41. ss.ss_addr_sk,
  42. ss.ss_store_sk,
  43. ss.ss_promo_sk,
  44. ss.ss_ticket_number,
  45. ss.ss_quantity,
  46. ss.ss_wholesale_cost,
  47. ss.ss_list_price,
  48. ss.ss_sales_price,
  49. ss.ss_ext_discount_amt,
  50. ss.ss_ext_sales_price,
  51. ss.ss_ext_wholesale_cost,
  52. ss.ss_ext_list_price,
  53. ss.ss_ext_tax,
  54. ss.ss_coupon_amt,
  55. ss.ss_net_paid,
  56. ss.ss_net_paid_inc_tax,
  57. ss.ss_net_profit,
  58. dd.d_date as ss_sold_date
  59. from ${SOURCE}.store_sales ss
  60. join ${SOURCE}.date_dim dd
  61. on (ss.ss_sold_date_sk = dd.d_date_sk);