-- SQLBench-DS query 70 derived from TPC-DS query 70 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) as total_sum,
  s_state,
  s_county,
  grouping(s_state) + grouping(s_county) as lochierarchy,
  rank() over (
    partition by
      grouping(s_state) + grouping(s_county),
      case
        when grouping(s_county) = 0 then s_state
      end
    order by
      sum(ss_net_profit) desc
  ) as rank_within_parent
from
  store_sales,
  date_dim d1,
  store
where
  d1.d_month_seq between 1180 and 1180  + 11
  and d1.d_date_sk = ss_sold_date_sk
  and s_store_sk = ss_store_sk
  and s_state in (
    select
      s_state
    from
      (
        select
          s_state as s_state,
          rank() over (
            partition by
              s_state
            order by
              sum(ss_net_profit) desc
          ) as ranking
        from
          store_sales,
          store,
          date_dim
        where
          d_month_seq between 1180 and 1180  + 11
          and d_date_sk = ss_sold_date_sk
          and s_store_sk = ss_store_sk
        group by
          s_state
      ) tmp1
    where
      ranking <= 5
  )
group by
  rollup (s_state, s_county)
order by
  lochierarchy desc,
  case
    when lochierarchy = 0 then s_state
  end,
  rank_within_parent
LIMIT
  100;
