github.com/apache/beam/sdks/v2@v2.48.2/java/testing/tpcds/src/main/resources/queries/query36.sql (about)

     1  -- Licensed to the Apache Software Foundation (ASF) under one
     2  -- or more contributor license agreements.  See the NOTICE file
     3  -- distributed with this work for additional information
     4  -- regarding copyright ownership.  The ASF licenses this file
     5  -- to you under the Apache License, Version 2.0 (the
     6  -- "License"); you may not use this file except in compliance
     7  -- with the License.  You may obtain a copy of the License at
     8  --
     9  --     http://www.apache.org/licenses/LICENSE-2.0
    10  --
    11  -- Unless required by applicable law or agreed to in writing, software
    12  -- distributed under the License is distributed on an "AS IS" BASIS,
    13  -- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    14  -- See the License for the specific language governing permissions and
    15  -- limitations under the License.
    16  
    17  select
    18      sum(ss_net_profit)/sum(ss_ext_sales_price) as gross_margin
    19     ,i_category
    20     ,i_class
    21     ,grouping(i_category)+grouping(i_class) as lochierarchy
    22     ,rank() over (
    23   	partition by grouping(i_category)+grouping(i_class),
    24   	case when grouping(i_class) = 0 then i_category end 
    25   	order by sum(ss_net_profit)/sum(ss_ext_sales_price) asc) as rank_within_parent
    26   from
    27      store_sales
    28     ,date_dim       d1
    29     ,item
    30     ,store
    31   where
    32      d1.d_year = 2000 
    33   and d1.d_date_sk = ss_sold_date_sk
    34   and i_item_sk  = ss_item_sk 
    35   and s_store_sk  = ss_store_sk
    36   and s_state in ('TN','TN','TN','TN',
    37                   'TN','TN','TN','TN')
    38   group by rollup(i_category,i_class)
    39   order by
    40     lochierarchy desc
    41    ,case when lochierarchy = 0 then i_category end
    42    ,rank_within_parent
    43    limit 100