-- SQLBench-DS query 36 derived from TPC-DS query 36 under the terms of the TPC Fair Use Policy.
-- TPC-DS queries are Copyright 2021 Transaction Processing Performance Council.
-- This query was generated at scale factor 1.
select
  sum(ss_net_profit) / sum(ss_ext_sales_price) as gross_margin,
  i_category,
  i_class,
  grouping(i_category) + grouping(i_class) as lochierarchy,
  rank() over (
    partition by
      grouping(i_category) + grouping(i_class),
      case
        when grouping(i_class) = 0 then i_category
      end
    order by
      sum(ss_net_profit) / sum(ss_ext_sales_price) asc
  ) as rank_within_parent
from
  store_sales,
  date_dim d1,
  item,
  store
where
  d1.d_year = 2001
  and d1.d_date_sk = ss_sold_date_sk
  and i_item_sk = ss_item_sk
  and s_store_sk = ss_store_sk
  and s_state in ('TN', 'TN', 'TN', 'TN', 'TN', 'TN', 'TN', 'TN')
group by
  rollup (i_category, i_class)
order by
  lochierarchy desc,
  case
    when lochierarchy = 0 then i_category
  end,
  rank_within_parent
LIMIT
  100;
