q46.sql 1.1 KB

1234567891011121314151617181920212223242526272829303132
  1. SELECT
  2. c_last_name,
  3. c_first_name,
  4. ca_city,
  5. bought_city,
  6. ss_ticket_number,
  7. amt,
  8. profit
  9. FROM
  10. (SELECT
  11. ss_ticket_number,
  12. ss_customer_sk,
  13. ca_city bought_city,
  14. sum(ss_coupon_amt) amt,
  15. sum(ss_net_profit) profit
  16. FROM store_sales, date_dim, store, household_demographics, customer_address
  17. WHERE store_sales.ss_sold_date_sk = date_dim.d_date_sk
  18. AND store_sales.ss_store_sk = store.s_store_sk
  19. AND store_sales.ss_hdemo_sk = household_demographics.hd_demo_sk
  20. AND store_sales.ss_addr_sk = customer_address.ca_address_sk
  21. AND (household_demographics.hd_dep_count = 4 OR
  22. household_demographics.hd_vehicle_count = 3)
  23. AND date_dim.d_dow IN (6, 0)
  24. AND date_dim.d_year IN (1999, 1999 + 1, 1999 + 2)
  25. AND store.s_city IN ('Fairview', 'Midway', 'Fairview', 'Fairview', 'Fairview')
  26. GROUP BY ss_ticket_number, ss_customer_sk, ss_addr_sk, ca_city) dn, customer,
  27. customer_address current_addr
  28. WHERE ss_customer_sk = c_customer_sk
  29. AND customer.c_current_addr_sk = current_addr.ca_address_sk
  30. AND current_addr.ca_city <> bought_city
  31. ORDER BY c_last_name, c_first_name, ca_city, bought_city, ss_ticket_number
  32. LIMIT 100