query66.sql 7.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220
  1. select
  2. w_warehouse_name
  3. ,w_warehouse_sq_ft
  4. ,w_city
  5. ,w_county
  6. ,w_state
  7. ,w_country
  8. ,ship_carriers
  9. ,year
  10. ,sum(jan_sales) as jan_sales
  11. ,sum(feb_sales) as feb_sales
  12. ,sum(mar_sales) as mar_sales
  13. ,sum(apr_sales) as apr_sales
  14. ,sum(may_sales) as may_sales
  15. ,sum(jun_sales) as jun_sales
  16. ,sum(jul_sales) as jul_sales
  17. ,sum(aug_sales) as aug_sales
  18. ,sum(sep_sales) as sep_sales
  19. ,sum(oct_sales) as oct_sales
  20. ,sum(nov_sales) as nov_sales
  21. ,sum(dec_sales) as dec_sales
  22. ,sum(jan_sales/w_warehouse_sq_ft) as jan_sales_per_sq_foot
  23. ,sum(feb_sales/w_warehouse_sq_ft) as feb_sales_per_sq_foot
  24. ,sum(mar_sales/w_warehouse_sq_ft) as mar_sales_per_sq_foot
  25. ,sum(apr_sales/w_warehouse_sq_ft) as apr_sales_per_sq_foot
  26. ,sum(may_sales/w_warehouse_sq_ft) as may_sales_per_sq_foot
  27. ,sum(jun_sales/w_warehouse_sq_ft) as jun_sales_per_sq_foot
  28. ,sum(jul_sales/w_warehouse_sq_ft) as jul_sales_per_sq_foot
  29. ,sum(aug_sales/w_warehouse_sq_ft) as aug_sales_per_sq_foot
  30. ,sum(sep_sales/w_warehouse_sq_ft) as sep_sales_per_sq_foot
  31. ,sum(oct_sales/w_warehouse_sq_ft) as oct_sales_per_sq_foot
  32. ,sum(nov_sales/w_warehouse_sq_ft) as nov_sales_per_sq_foot
  33. ,sum(dec_sales/w_warehouse_sq_ft) as dec_sales_per_sq_foot
  34. ,sum(jan_net) as jan_net
  35. ,sum(feb_net) as feb_net
  36. ,sum(mar_net) as mar_net
  37. ,sum(apr_net) as apr_net
  38. ,sum(may_net) as may_net
  39. ,sum(jun_net) as jun_net
  40. ,sum(jul_net) as jul_net
  41. ,sum(aug_net) as aug_net
  42. ,sum(sep_net) as sep_net
  43. ,sum(oct_net) as oct_net
  44. ,sum(nov_net) as nov_net
  45. ,sum(dec_net) as dec_net
  46. from (
  47. select
  48. w_warehouse_name
  49. ,w_warehouse_sq_ft
  50. ,w_city
  51. ,w_county
  52. ,w_state
  53. ,w_country
  54. ,concat('DIAMOND', ',', 'AIRBORNE') as ship_carriers
  55. ,d_year as year
  56. ,sum(case when d_moy = 1
  57. then ws_sales_price* ws_quantity else 0 end) as jan_sales
  58. ,sum(case when d_moy = 2
  59. then ws_sales_price* ws_quantity else 0 end) as feb_sales
  60. ,sum(case when d_moy = 3
  61. then ws_sales_price* ws_quantity else 0 end) as mar_sales
  62. ,sum(case when d_moy = 4
  63. then ws_sales_price* ws_quantity else 0 end) as apr_sales
  64. ,sum(case when d_moy = 5
  65. then ws_sales_price* ws_quantity else 0 end) as may_sales
  66. ,sum(case when d_moy = 6
  67. then ws_sales_price* ws_quantity else 0 end) as jun_sales
  68. ,sum(case when d_moy = 7
  69. then ws_sales_price* ws_quantity else 0 end) as jul_sales
  70. ,sum(case when d_moy = 8
  71. then ws_sales_price* ws_quantity else 0 end) as aug_sales
  72. ,sum(case when d_moy = 9
  73. then ws_sales_price* ws_quantity else 0 end) as sep_sales
  74. ,sum(case when d_moy = 10
  75. then ws_sales_price* ws_quantity else 0 end) as oct_sales
  76. ,sum(case when d_moy = 11
  77. then ws_sales_price* ws_quantity else 0 end) as nov_sales
  78. ,sum(case when d_moy = 12
  79. then ws_sales_price* ws_quantity else 0 end) as dec_sales
  80. ,sum(case when d_moy = 1
  81. then ws_net_paid_inc_tax * ws_quantity else 0 end) as jan_net
  82. ,sum(case when d_moy = 2
  83. then ws_net_paid_inc_tax * ws_quantity else 0 end) as feb_net
  84. ,sum(case when d_moy = 3
  85. then ws_net_paid_inc_tax * ws_quantity else 0 end) as mar_net
  86. ,sum(case when d_moy = 4
  87. then ws_net_paid_inc_tax * ws_quantity else 0 end) as apr_net
  88. ,sum(case when d_moy = 5
  89. then ws_net_paid_inc_tax * ws_quantity else 0 end) as may_net
  90. ,sum(case when d_moy = 6
  91. then ws_net_paid_inc_tax * ws_quantity else 0 end) as jun_net
  92. ,sum(case when d_moy = 7
  93. then ws_net_paid_inc_tax * ws_quantity else 0 end) as jul_net
  94. ,sum(case when d_moy = 8
  95. then ws_net_paid_inc_tax * ws_quantity else 0 end) as aug_net
  96. ,sum(case when d_moy = 9
  97. then ws_net_paid_inc_tax * ws_quantity else 0 end) as sep_net
  98. ,sum(case when d_moy = 10
  99. then ws_net_paid_inc_tax * ws_quantity else 0 end) as oct_net
  100. ,sum(case when d_moy = 11
  101. then ws_net_paid_inc_tax * ws_quantity else 0 end) as nov_net
  102. ,sum(case when d_moy = 12
  103. then ws_net_paid_inc_tax * ws_quantity else 0 end) as dec_net
  104. from
  105. web_sales
  106. ,warehouse
  107. ,date_dim
  108. ,time_dim
  109. ,ship_mode
  110. where
  111. web_sales.ws_warehouse_sk = warehouse.w_warehouse_sk
  112. and web_sales.ws_sold_date_sk = date_dim.d_date_sk
  113. and web_sales.ws_sold_time_sk = time_dim.t_time_sk
  114. and web_sales.ws_ship_mode_sk = ship_mode.sm_ship_mode_sk
  115. and d_year = 2002
  116. and t_time between 49530 and 49530+28800
  117. and sm_carrier in ('DIAMOND','AIRBORNE')
  118. group by
  119. w_warehouse_name
  120. ,w_warehouse_sq_ft
  121. ,w_city
  122. ,w_county
  123. ,w_state
  124. ,w_country
  125. ,d_year
  126. union all
  127. select
  128. w_warehouse_name
  129. ,w_warehouse_sq_ft
  130. ,w_city
  131. ,w_county
  132. ,w_state
  133. ,w_country
  134. ,concat('DIAMOND', ',', 'AIRBORNE') as ship_carriers
  135. ,d_year as year
  136. ,sum(case when d_moy = 1
  137. then cs_ext_sales_price* cs_quantity else 0 end) as jan_sales
  138. ,sum(case when d_moy = 2
  139. then cs_ext_sales_price* cs_quantity else 0 end) as feb_sales
  140. ,sum(case when d_moy = 3
  141. then cs_ext_sales_price* cs_quantity else 0 end) as mar_sales
  142. ,sum(case when d_moy = 4
  143. then cs_ext_sales_price* cs_quantity else 0 end) as apr_sales
  144. ,sum(case when d_moy = 5
  145. then cs_ext_sales_price* cs_quantity else 0 end) as may_sales
  146. ,sum(case when d_moy = 6
  147. then cs_ext_sales_price* cs_quantity else 0 end) as jun_sales
  148. ,sum(case when d_moy = 7
  149. then cs_ext_sales_price* cs_quantity else 0 end) as jul_sales
  150. ,sum(case when d_moy = 8
  151. then cs_ext_sales_price* cs_quantity else 0 end) as aug_sales
  152. ,sum(case when d_moy = 9
  153. then cs_ext_sales_price* cs_quantity else 0 end) as sep_sales
  154. ,sum(case when d_moy = 10
  155. then cs_ext_sales_price* cs_quantity else 0 end) as oct_sales
  156. ,sum(case when d_moy = 11
  157. then cs_ext_sales_price* cs_quantity else 0 end) as nov_sales
  158. ,sum(case when d_moy = 12
  159. then cs_ext_sales_price* cs_quantity else 0 end) as dec_sales
  160. ,sum(case when d_moy = 1
  161. then cs_net_paid_inc_ship_tax * cs_quantity else 0 end) as jan_net
  162. ,sum(case when d_moy = 2
  163. then cs_net_paid_inc_ship_tax * cs_quantity else 0 end) as feb_net
  164. ,sum(case when d_moy = 3
  165. then cs_net_paid_inc_ship_tax * cs_quantity else 0 end) as mar_net
  166. ,sum(case when d_moy = 4
  167. then cs_net_paid_inc_ship_tax * cs_quantity else 0 end) as apr_net
  168. ,sum(case when d_moy = 5
  169. then cs_net_paid_inc_ship_tax * cs_quantity else 0 end) as may_net
  170. ,sum(case when d_moy = 6
  171. then cs_net_paid_inc_ship_tax * cs_quantity else 0 end) as jun_net
  172. ,sum(case when d_moy = 7
  173. then cs_net_paid_inc_ship_tax * cs_quantity else 0 end) as jul_net
  174. ,sum(case when d_moy = 8
  175. then cs_net_paid_inc_ship_tax * cs_quantity else 0 end) as aug_net
  176. ,sum(case when d_moy = 9
  177. then cs_net_paid_inc_ship_tax * cs_quantity else 0 end) as sep_net
  178. ,sum(case when d_moy = 10
  179. then cs_net_paid_inc_ship_tax * cs_quantity else 0 end) as oct_net
  180. ,sum(case when d_moy = 11
  181. then cs_net_paid_inc_ship_tax * cs_quantity else 0 end) as nov_net
  182. ,sum(case when d_moy = 12
  183. then cs_net_paid_inc_ship_tax * cs_quantity else 0 end) as dec_net
  184. from
  185. catalog_sales
  186. ,warehouse
  187. ,date_dim
  188. ,time_dim
  189. ,ship_mode
  190. where
  191. catalog_sales.cs_warehouse_sk = warehouse.w_warehouse_sk
  192. and catalog_sales.cs_sold_date_sk = date_dim.d_date_sk
  193. and catalog_sales.cs_sold_time_sk = time_dim.t_time_sk
  194. and catalog_sales.cs_ship_mode_sk = ship_mode.sm_ship_mode_sk
  195. and d_year = 2002
  196. and t_time between 49530 AND 49530+28800
  197. and sm_carrier in ('DIAMOND','AIRBORNE')
  198. group by
  199. w_warehouse_name
  200. ,w_warehouse_sq_ft
  201. ,w_city
  202. ,w_county
  203. ,w_state
  204. ,w_country
  205. ,d_year
  206. ) x
  207. group by
  208. w_warehouse_name
  209. ,w_warehouse_sq_ft
  210. ,w_city
  211. ,w_county
  212. ,w_state
  213. ,w_country
  214. ,ship_carriers
  215. ,year
  216. order by w_warehouse_name
  217. limit 100;