在谷歌单张中,列出购买产品的顾客名单,他们根据购买时间和是否使用折扣代码支付不同的价格(col )。
我需要生成一个字符串来显示以每种价格购买该产品的人数。所以字符串应该如下所示,显示1名客户支付了£30,4名客户支付了GB33.50,等等。
1@30 + 4@33.5 + 24@34 + 1@34.5 + 23*35 + 17@37 + 12@37.5如果价格是固定的,那么我可以使用COUNTIF和SUMIF,并将价格硬编码到公式中。但价格在不断变化,名单也在不断增加。因此,我需要一个公式,可以创建尽可能长的字符串,视需要。这是如何做到的呢?
这是谷歌的单子,列出了以不同价格购买该产品的客户名单,并举例说明了期望的结果:https://docs.google.com/spreadsheets/d/1WmIXmkKmZOVcJ4dXxzy0CXbRCMya3uAdWk8yKhA50rw/edit?usp=sharing
发布于 2020-07-12 00:26:12
蒂姆,嵌套的QUERY应该这么做。试一试(假设您的价格在B栏中,如文章中所述):
=ArrayFormula(JOIN(" + ",QUERY(QUERY(B:B,"Select COUNT(B), B Where B Is Not Null Group By B Order By B Asc Label COUNT(B) ''",0),"Select Col1")&"@"&QUERY(QUERY(B:B,"Select COUNT(B), B Where B Is Not Null Group By B Order By B Asc Label COUNT(B) ''",0),"Select Col2")))我鼓励您看看中心查询本身所做的事情:
QUERY(B:B,"Select COUNT(B), B Where B Is Not Null Group By B Order By B Asc Label COUNT(B) ''",0)另外两个外部QUERY对该数据进行操作,将第一列加"@“加上第二列连接起来。
然后,JOIN只接受这个虚拟垂直列表,并在每个元素之间形成一个带有“+”的字符串。
https://stackoverflow.com/questions/62855630
复制相似问题