q18.sql 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. --!syntax_pg
  2. --TPC-DS Q18
  3. -- start query 1 in stream 0 using template ../query_templates/query18.tpl
  4. select i_item_id,
  5. ca_country,
  6. ca_state,
  7. ca_county,
  8. avg( cast(cs_quantity as decimal(12,2))) agg1,
  9. avg( cast(cs_list_price as decimal(12,2))) agg2,
  10. avg( cast(cs_coupon_amt as decimal(12,2))) agg3,
  11. avg( cast(cs_sales_price as decimal(12,2))) agg4,
  12. avg( cast(cs_net_profit as decimal(12,2))) agg5,
  13. avg( cast(c_birth_year as decimal(12,2))) agg6,
  14. avg( cast(cd1.cd_dep_count as decimal(12,2))) agg7
  15. from plato.catalog_sales, plato.customer_demographics cd1,
  16. plato.customer_demographics cd2, plato.customer, plato.customer_address, plato.date_dim, plato.item
  17. where cs_sold_date_sk = d_date_sk and
  18. cs_item_sk = i_item_sk and
  19. cs_bill_cdemo_sk = cd1.cd_demo_sk and
  20. cs_bill_customer_sk = c_customer_sk and
  21. cd1.cd_gender = 'M' and
  22. cd1.cd_education_status = 'College' and
  23. c_current_cdemo_sk = cd2.cd_demo_sk and
  24. c_current_addr_sk = ca_address_sk and
  25. c_birth_month in (9,5,12,4,1,10) and
  26. d_year = 2001 and
  27. ca_state in ('ND','WI','AL'
  28. ,'NC','OK','MS','TN')
  29. group by rollup (i_item_id, ca_country, ca_state, ca_county)
  30. order by ca_country,
  31. ca_state,
  32. ca_county,
  33. i_item_id
  34. limit 100;
  35. -- end query 1 in stream 0 using template ../query_templates/query18.tpl