query68.sql 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. select c_last_name
  2. ,c_first_name
  3. ,ca_city
  4. ,bought_city
  5. ,ss_ticket_number
  6. ,extended_price
  7. ,extended_tax
  8. ,list_price
  9. from (select ss_ticket_number
  10. ,ss_customer_sk
  11. ,ca_city bought_city
  12. ,sum(ss_ext_sales_price) extended_price
  13. ,sum(ss_ext_list_price) list_price
  14. ,sum(ss_ext_tax) extended_tax
  15. from store_sales
  16. ,date_dim
  17. ,store
  18. ,household_demographics
  19. ,customer_address
  20. where store_sales.ss_sold_date_sk = date_dim.d_date_sk
  21. and store_sales.ss_store_sk = store.s_store_sk
  22. and store_sales.ss_hdemo_sk = household_demographics.hd_demo_sk
  23. and store_sales.ss_addr_sk = customer_address.ca_address_sk
  24. and date_dim.d_dom between 1 and 2
  25. and (household_demographics.hd_dep_count = 4 or
  26. household_demographics.hd_vehicle_count= 2)
  27. and date_dim.d_year in (1998,1998+1,1998+2)
  28. and ss_sold_date in (
  29. '1998-01-01', '1998-01-02', '1998-02-01', '1998-02-02', '1998-03-01', '1998-03-02',
  30. '1998-04-01', '1998-04-02', '1998-05-01', '1998-05-02', '1998-06-01', '1998-06-02',
  31. '1998-07-01', '1998-07-02', '1998-08-01', '1998-08-02', '1998-09-01', '1998-09-02',
  32. '1998-10-01', '1998-10-02', '1998-11-01', '1998-11-02', '1998-12-01', '1998-12-02',
  33. '1999-01-01', '1999-01-02', '1999-02-01', '1999-02-02', '1999-03-01', '1999-03-02',
  34. '1999-04-01', '1999-04-02', '1999-05-01', '1999-05-02', '1999-06-01', '1999-06-02',
  35. '1999-07-01', '1999-07-02', '1999-08-01', '1999-08-02', '1999-09-01', '1999-09-02',
  36. '1999-10-01', '1999-10-02', '1999-11-01', '1999-11-02', '1999-12-01', '1999-12-02',
  37. '2000-01-01', '2000-01-02', '2000-02-01', '2000-02-02', '2000-03-01', '2000-03-02',
  38. '2000-04-01', '2000-04-02', '2000-05-01', '2000-05-02', '2000-06-01', '2000-06-02',
  39. '2000-07-01', '2000-07-02', '2000-08-01', '2000-08-02', '2000-09-01', '2000-09-02',
  40. '2000-10-01', '2000-10-02', '2000-11-01', '2000-11-02', '2000-12-01', '2000-12-02'
  41. )
  42. and store.s_city in ('Rosedale','Bethlehem')
  43. group by ss_ticket_number
  44. ,ss_customer_sk
  45. ,ss_addr_sk,ca_city) dn
  46. ,customer
  47. ,customer_address current_addr
  48. where dn.ss_customer_sk = customer.c_customer_sk
  49. and customer.c_current_addr_sk = current_addr.ca_address_sk
  50. and current_addr.ca_city <> bought_city
  51. order by c_last_name
  52. ,ss_ticket_number
  53. limit 100;