Google 工作表查询唯一范围
Google sheets query on unique range
我有一些数据的 Y 和 Z 两列:
Y Z
G U
P U
G U
G U
G P
G P
P U
R U
R P
C P
C U
我得到了基于两列的唯一值,如下所示:
=UNIQUE(Y1:Z10)
我当然得到了:
A B <- columns
G U
P U
G P
U U
U P
C P
C U
然后我可以得到第二列如下:
=QUERY(A1:B10;"select B")
所以我得到了:
U
U
P
U
P
P
U
太好了,我以为我已经准备好了,只需混合公式:
=QUERY(UNIQUE(Y1:Z10);"select *")
-> 这是有效的 - 如预期的那样得到两列。
但是当我尝试 select 特定列时 - 它的值错误 - 没有列“X”。
问题当然出在列名上,但是,是的,如何获取它?
如果 QUERY
直接作用于实际范围,则只能使用列字母(例如 Z
)。由于您引入了 UNIQUE
,因此您创建了一个虚拟数组而不是直接引用;并且您必须以“Colx
”格式引用 QUERY
内的虚拟数组列,例如:
=QUERY(UNIQUE(Y1:Z10),"select Col2 WHERE Col2 Is Not Null")
顺便说一句,你会想要那里的 WHERE Col2 Is Not Null
,因为 UNIQUE
将 null 视为唯一值(即,UNIQUE
处理的每个空白行都有一个空值,除非您进一步处理它,否则它会与结果一起返回。
我有一些数据的 Y 和 Z 两列:
Y Z
G U
P U
G U
G U
G P
G P
P U
R U
R P
C P
C U
我得到了基于两列的唯一值,如下所示:
=UNIQUE(Y1:Z10)
我当然得到了:
A B <- columns
G U
P U
G P
U U
U P
C P
C U
然后我可以得到第二列如下:
=QUERY(A1:B10;"select B")
所以我得到了:
U
U
P
U
P
P
U
太好了,我以为我已经准备好了,只需混合公式:
=QUERY(UNIQUE(Y1:Z10);"select *")
-> 这是有效的 - 如预期的那样得到两列。
但是当我尝试 select 特定列时 - 它的值错误 - 没有列“X”。
问题当然出在列名上,但是,是的,如何获取它?
如果 QUERY
直接作用于实际范围,则只能使用列字母(例如 Z
)。由于您引入了 UNIQUE
,因此您创建了一个虚拟数组而不是直接引用;并且您必须以“Colx
”格式引用 QUERY
内的虚拟数组列,例如:
=QUERY(UNIQUE(Y1:Z10),"select Col2 WHERE Col2 Is Not Null")
顺便说一句,你会想要那里的 WHERE Col2 Is Not Null
,因为 UNIQUE
将 null 视为唯一值(即,UNIQUE
处理的每个空白行都有一个空值,除非您进一步处理它,否则它会与结果一起返回。