【发布时间】:2021-03-02 11:25:19
【问题描述】:
如果我有一张记录每天售出多少产品的表格 - 如果售出 0 件商品则不输入日志 - 我将如何确定我的所有产品在一天的销售额为 0?
咖啡桌示例
Date Item QuantitySold
Jan 1 coffee 4
Jan 1 tea 1
Jan 2 tea 3
Jan 3 coffee 2
Jan 3 tea 4
所需的输出将是这样的。到目前为止,我可以得到一个列出每天和销售数量的版本,但不知道是否有办法同时“标记”产品。
Item TotalSold SoldDaily
coffee 6 FALSE
tea 8 TRUE
这是我粗略的起点 - JOIN 是试图强制显示所有日期,但它仍然在 1 月 2 日跳过咖啡行。从那里开始,我无法弄清楚我可能会如何执行下一步 - 我尝试了几个 CASE WHEN,但没有走到一起。
with dates as (select distinct date from cafetable)
select date,
product,
sum(quantitysold) as quant_sold,
min(quantitysold) as min_sold
from dates c
left join cafetable d on d.date=c.date
group by 1,2
我认为我什至没有很好地表达这一点。我每天要处理这个表十几次,我觉得这个查询已经把我的大脑烧坏了。
【问题讨论】:
-
在您的查询中,您将
product作为第二列,但在CafeTable中,我认为该列应该是item。
标签: mysql sql google-bigquery