gpt4 book ai didi

google-sheets - Google 表格查询函数 : Select Columns by Name

转载 作者:行者123 更新时间:2023-12-01 22:51:02 25 4
gpt4 key购买 nike

我有一个 Google 表格,其中的命名范围超出了 A-Z 列。名称范围具有标题行。我想使用 QUERY 函数按标题标签选择列。

我的公式是这样的:

=QUERY(NamedRange,"SELECT AZ, AX, BM where BB='student' ORDER BY BM DESC",1)

对 StackOverflow 上其他问题的回答,例如已接受的 here ,没用过。找到另一个答案 here Google 支持页面上的不适用于 Z 以外的列。

如何使用 QUERY 函数并通过标题标签选择 AA 列以外的列?

期望的输出/样本数据

enter image description here

可以找到具有所需输出的示例电子表格 here .

最佳答案

你可以转置它,标题行变成一列。然后:

=TRANSPOSE(QUERY(TRANSPOSE(A1:C), "where Col1 matches 'bb header|student'", ))

其中 A1:C 是您的命名范围(包括标题行)

enter image description here


更新:

=QUERY({AI1:AK6}, "select Col2,Col3 where Col1='Jones'", 1)

enter image description here

动态地:

=LAMBDA(p, t, s, QUERY({AI1:AK6}, 
"select Col"&t&",Col"&s&"
where Col"&p&"='Jones'
order by Col"&t&" desc", 1))
(MATCH("principal", AI1:AK1, ),
MATCH("teacher", AI1:AK1, ),
MATCH("student", AI1:AK1, ))

enter image description here


为什么选择 LAMBDA?

LAMBDA 是一个常规的 GS 函数,它允许用自定义字符串替换任何类型的范围。简单 lambda 的一般示例:=LAMBDA(x, x+5)(A1) 旧术语:=A1+5 因此您可以将其理解为 xA1 的占位符。再举一个例子:=IF((A1+1)>(B1+1), B1+1-A1+200, B1+1*A1+20) 包含很多重复的单元格引用,所以我们可以像这样重构它:=LAMBDA(a, b, IF((a+1)>b, b-a+200, b*a+20))(A1, B1+1)这对于更高级的公式堆叠特别方便,而不是多次重复整个 fx 我们可以将它包装在 Lambda 中以缩短它并使其更清晰

enter image description here

您可以拥有任意数量的 LAMBDA:

enter image description here

enter image description here

这里,只是为了好玩,再举一个例子......使用 lambda:

enter image description here

没有 lambda:pastebin.com/raw/BREgC9La

enter image description here

(来自:stackoverflow.com/a/74380299/5632629)

关于google-sheets - Google 表格查询函数 : Select Columns by Name,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74393350/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com