【发布时间】:2017-09-12 23:35:03
【问题描述】:
我在 BQ 中有销售数据,其中包含以下列 -
Customer Id | ItemID | Order_Qty | Order_Date
我想根据商品的总销量创建一个销售排名表。
最大售出物品数量的最高排名。
例如。 - 总销量为 30 的商品 abc 应排名第 1,总销量为 20 的商品 XYZ 应排名第 2,依此类推。
在我的结果表中,我想要以下列。
ItemId | Total Quantity | Rank
这是我迄今为止在旧版 SQL 格式中的尝试——
select ItemId ,
RANK() over (partition by ItemId order by Qty desc) as salesrank
from (SELECT ItemId, sum(order_qty) as Qty
FROM sales
group by 1
)
由于某种原因,所有的销售排名都是 1
【问题讨论】:
-
您的查询应该失败,因为
itemId不在子查询中。 -
我刚刚编辑了查询。谢谢
标签: sql google-bigquery