如何获取多个匹配结果,显示按两列排序的结果(然后转置)?
How can I fetch multiple matching results, show the result sorted by two columns (and then transpose)?
我希望能够在列表中添加 urls,然后有一个公式可以获取与 url 匹配的所有结果并按 1) 位置 2) 数量排序.
我有一个半可行的解决方案,但当我尝试将其限制为三个结果时,排序已关闭。
https://docs.google.com/spreadsheets/d/1dSXTdqFKUjQokv8cbzDLnfkGughp5m3yFLciLjCmqFo/edit?usp=sharing
详细:
我有一个 sheet 有很多原始数据。这是一个 url 的列表,每个 url 都有包含
的列
- 主题
- 位置
- 音量
- 其他数据
在另一个 sheet 中,我希望能够添加一个 url 并有一个公式 returns 与该特定 [=47] 相关的所有主题的列表=].由于每个 url 可以有多个主题,我希望能够按 1) 位置和如果有平局 2) 按体积对结果进行排序。
我计划在我的手动列表中添加多个 url,因此我需要使用转置以便水平显示。
我已经想出了一个(某种)可行的解决方案,但我怀疑它不是最优的。
=UNIQUE(SORT(INDEX(SORTN(FILTER( 'Raw Data'!B:D, 'Raw Data'!A:A=B17),50,3,3,FALSE),,0),2,true))
我遇到的主要问题是,当我尝试将列表限制为只显示前三名时,排序是错误的。
=UNIQUE(SORT(INDEX(SORTN(FILTER( 'Raw Data'!B:D, 'Raw Data'!A:A=H17),3,2,3,FALSE),,0),2,true))
我仍在学习如何使用 Google Sheets 公式。感谢您的帮助!
在我输入的重复标签中
=SORTN(FILTER( 'Raw Data'!B:D, 'Raw Data'!A:A=H17), 3, 2, 2, 1, 3, 0)
并用于转置
=ARRAY_CONSTRAIN(TRANSPOSE(SORTN(FILTER( 'Raw Data'!B:D, 'Raw Data'!A:A=H17),3,2,2,1, 3, 0)), 1, 3)
或者,您可以使用 query()
=query( 'Raw Data'!A:D, "Select B, C, D where A = '"&H17&"' order by C asc, D desc limit 3")
和
=transpose(query( 'Raw Data'!A:D, "Select B where A = '"&H17&"' order by C asc, D desc limit 3"))
看看是否有效?
我希望能够在列表中添加 urls,然后有一个公式可以获取与 url 匹配的所有结果并按 1) 位置 2) 数量排序.
我有一个半可行的解决方案,但当我尝试将其限制为三个结果时,排序已关闭。
https://docs.google.com/spreadsheets/d/1dSXTdqFKUjQokv8cbzDLnfkGughp5m3yFLciLjCmqFo/edit?usp=sharing
详细:
我有一个 sheet 有很多原始数据。这是一个 url 的列表,每个 url 都有包含
的列- 主题
- 位置
- 音量
- 其他数据
在另一个 sheet 中,我希望能够添加一个 url 并有一个公式 returns 与该特定 [=47] 相关的所有主题的列表=].由于每个 url 可以有多个主题,我希望能够按 1) 位置和如果有平局 2) 按体积对结果进行排序。
我计划在我的手动列表中添加多个 url,因此我需要使用转置以便水平显示。
我已经想出了一个(某种)可行的解决方案,但我怀疑它不是最优的。
=UNIQUE(SORT(INDEX(SORTN(FILTER( 'Raw Data'!B:D, 'Raw Data'!A:A=B17),50,3,3,FALSE),,0),2,true))
我遇到的主要问题是,当我尝试将列表限制为只显示前三名时,排序是错误的。
=UNIQUE(SORT(INDEX(SORTN(FILTER( 'Raw Data'!B:D, 'Raw Data'!A:A=H17),3,2,3,FALSE),,0),2,true))
我仍在学习如何使用 Google Sheets 公式。感谢您的帮助!
在我输入的重复标签中
=SORTN(FILTER( 'Raw Data'!B:D, 'Raw Data'!A:A=H17), 3, 2, 2, 1, 3, 0)
并用于转置
=ARRAY_CONSTRAIN(TRANSPOSE(SORTN(FILTER( 'Raw Data'!B:D, 'Raw Data'!A:A=H17),3,2,2,1, 3, 0)), 1, 3)
或者,您可以使用 query()
=query( 'Raw Data'!A:D, "Select B, C, D where A = '"&H17&"' order by C asc, D desc limit 3")
和
=transpose(query( 'Raw Data'!A:D, "Select B where A = '"&H17&"' order by C asc, D desc limit 3"))
看看是否有效?