【问题标题】:Grouping all locations into one location将所有位置分组到一个位置
【发布时间】:2020-01-21 01:10:04
【问题描述】:

所以现在我有 36 家面包店 - 都有各自的面包店名称。我们也给它们编号。我想将 35 家面包店组合在一起,以了解他们的销售额。我可以单独拉它们,但是否可以将它们全部拉在一起并称之为 35 号?

 ----------- 
  LOCATION  
  1         
  2         
  15        
  17        
  53        
  68        
  76        
  81        
  173       
  213       
  215       
  259       
  560       

理想情况下,我想将以上所有商店归为一组,并将其命名为 35 Bakeries。

【问题讨论】:

  • 样本数据和期望的结果会有所帮助。准确的数据库标签也是如此。

标签: sql sql-server teradata


【解决方案1】:

您可以使用聚合查询:

select 35, count(*), sum(sales)
from t
where location in (1, 2, 15, . . . );

【讨论】:

    【解决方案2】:

    以下是获取前 35 家面包店销售额的方法。

    select '35' as bakery_name, sum(sales) from bakery t1
    inner join 
    (select distinct row_number() over (order by location) as rn, location from bakery) t2 on t2.location = t1.location
    where t2.rn <= 35
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-03-16
      • 2011-07-15
      • 2016-12-15
      • 1970-01-01
      • 2023-03-29
      • 2022-12-05
      • 2023-01-27
      相关资源
      最近更新 更多