我有一个有2列的表,a是组名称,B是角色名称。每个Group以不同的角色出现多次,我想找到A列中每个Group值在B列中出现次数最多的角色值。如何使用Google查询实现?
我没有成功,我尝试使用这个Google查询:
=QUERY(A1:B, "SELECT b GROUP BY A HAVING COUNT(B) = MAX(COUNT(B))",1)
但是我得到一个错误:
无法解析函数查询参数2的查询字符串:PARSE_ERROR:遇到"有"在第1行,第21列。我期待着其中一个:"pivot";…"order"…"skipping"…"limit"…"offset"…"label"…"format"…"options"…",";…">"…"+";…"产生绯闻;…"/";…"%";…">"…"/";…"%";…"+";…"产生绯闻;…
您可以执行QUERY来计算出现的次数,但是随后(至少使用我拥有的工具)您应该过滤值以找到不同的MAX组合:
查询是:
=QUERY(A:B,"SELECT A,B,COUNT(B) GROUP BY A,B")
和完整的公式:
=LAMBDA(quer,MAP(FILTER(UNIQUE(A:A),UNIQUE(A:A)<>""),
LAMBDA(each,SORTN(FILTER(quer,INDEX(quer,,1)=each),1,0,1,1))))
(QUERY(A:B,"SELECT A,B,COUNT(B) GROUP BY A,B"))