Google sheets 如何限制在Google Sheets查询中使用多个匹配项时返回的条目数

Google sheets 如何限制在Google Sheets查询中使用多个匹配项时返回的条目数,google-sheets,Google Sheets,下面是我的GoogleSheets文档的结构。我想限制查询返回的结果的数量,但要限制每个匹配的结果,而不是整个查询的结果 下面是我目前的公式 =query({Sheet5!A2:B}, " select * where Col1 matches 'School A|School B|School C' and Col2 is not null desc limit 5 ") 因此,这里发生的事情是,公式按照公式的要求查找所有匹配项,并继续将总条目数限制为5。我想把每场比赛

下面是我的GoogleSheets文档的结构。我想限制查询返回的结果的数量,但要限制每个匹配的结果,而不是整个查询的结果

下面是我目前的公式

=query({Sheet5!A2:B}, " select * where Col1 matches 'School A|School B|School C' 
and Col2 is not null desc limit 5 ")
因此,这里发生的事情是,公式按照公式的要求查找所有匹配项,并继续将总条目数限制为5。我想把每场比赛的成绩限制在5分,这样A学校的成绩是5分,B学校的成绩也是5分等等

感谢

提出的解决方案: 阵列 您可以使用,这涉及将三个单独的查询组合成一个公式

例如:

={1,1,1;2,2,2;3,3,3}
给你这个:

你的榜样 您可以对3个单独的查询执行类似的操作,将所有查询放在
{}
之间,并用
分隔它们

={
query(Sheet1!A2:B, "SELECT * WHERE A MATCHES 'School A' AND B IS NOT NULL ORDER BY B DESC LIMIT 5", 0);
query(Sheet1!A2:B, "SELECT * WHERE A MATCHES 'School B' AND B IS NOT NULL ORDER BY B DESC LIMIT 5", 0);
query(Sheet1!A2:B, "SELECT * WHERE A MATCHES 'School C' AND B IS NOT NULL ORDER BY B DESC LIMIT 5", 0)
}
这会给你类似的东西:


在SQL中,可以进行分组查询并将其转换为单个查询,但AFAIK Google Sheets查询不支持这一点。无论如何,这种方式似乎更简单,除非您希望按B列全局排序

工具书类