q85.sql 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. SELECT
  2. substr(r_reason_desc, 1, 20),
  3. avg(ws_quantity),
  4. avg(wr_refunded_cash),
  5. avg(wr_fee)
  6. FROM web_sales, web_returns, web_page, customer_demographics cd1,
  7. customer_demographics cd2, customer_address, date_dim, reason
  8. WHERE ws_web_page_sk = wp_web_page_sk
  9. AND ws_item_sk = wr_item_sk
  10. AND ws_order_number = wr_order_number
  11. AND ws_sold_date_sk = d_date_sk AND d_year = 2000
  12. AND cd1.cd_demo_sk = wr_refunded_cdemo_sk
  13. AND cd2.cd_demo_sk = wr_returning_cdemo_sk
  14. AND ca_address_sk = wr_refunded_addr_sk
  15. AND r_reason_sk = wr_reason_sk
  16. AND
  17. (
  18. (
  19. cd1.cd_marital_status = 'M'
  20. AND
  21. cd1.cd_marital_status = cd2.cd_marital_status
  22. AND
  23. cd1.cd_education_status = 'Advanced Degree'
  24. AND
  25. cd1.cd_education_status = cd2.cd_education_status
  26. AND
  27. ws_sales_price BETWEEN 100.00 AND 150.00
  28. )
  29. OR
  30. (
  31. cd1.cd_marital_status = 'S'
  32. AND
  33. cd1.cd_marital_status = cd2.cd_marital_status
  34. AND
  35. cd1.cd_education_status = 'College'
  36. AND
  37. cd1.cd_education_status = cd2.cd_education_status
  38. AND
  39. ws_sales_price BETWEEN 50.00 AND 100.00
  40. )
  41. OR
  42. (
  43. cd1.cd_marital_status = 'W'
  44. AND
  45. cd1.cd_marital_status = cd2.cd_marital_status
  46. AND
  47. cd1.cd_education_status = '2 yr Degree'
  48. AND
  49. cd1.cd_education_status = cd2.cd_education_status
  50. AND
  51. ws_sales_price BETWEEN 150.00 AND 200.00
  52. )
  53. )
  54. AND
  55. (
  56. (
  57. ca_country = 'United States'
  58. AND
  59. ca_state IN ('IN', 'OH', 'NJ')
  60. AND ws_net_profit BETWEEN 100 AND 200
  61. )
  62. OR
  63. (
  64. ca_country = 'United States'
  65. AND
  66. ca_state IN ('WI', 'CT', 'KY')
  67. AND ws_net_profit BETWEEN 150 AND 300
  68. )
  69. OR
  70. (
  71. ca_country = 'United States'
  72. AND
  73. ca_state IN ('LA', 'IA', 'AR')
  74. AND ws_net_profit BETWEEN 50 AND 250
  75. )
  76. )
  77. GROUP BY r_reason_desc
  78. ORDER BY substr(r_reason_desc, 1, 20)
  79. , avg(ws_quantity)
  80. , avg(wr_refunded_cash)
  81. , avg(wr_fee)
  82. LIMIT 100