在 Google 表格中查询({Importhtml 1; Importhtml 2;...})期间丢失我的主键
Loosing my primaryKey during Query({Importhtml1; Importhtml2;...}) in Google Sheets
我需要查询最多 50 个具有动态长度的源。这就是为什么它必须是一个多合一的命令。
每个源的长度经常变化。每个 Source 都有 RowA 作为 Primarykey。但是在查询所有源之后,密钥不再是唯一的。
假设我的来源是这样的:
SourceA SourceB SourceC
James 5 Jack 3 Jane 5
Steve 3 James 1 Steve 1
然后这个代码:
=Query({Importhtml("ScrA";"table";1); Importhtml("ScrB";"table";1); ...})
returns 这个:
结果:
James 5
Steve 3
Jack 3
James 1
Jane 4
Steve 1
如您所见,我不知道 "Steve" 来自哪个来源 - 但我需要知道...
有什么方法可以得到这样的结果(请记住,所有源的长度都在变化)?
ScrA James 5
ScrA Steve 3
ScrB Jack 3
ScrB James 1
ScrC Jane 4
ScrC Steve 1
你需要这样做:
=ARRAYFORMULA(QUERY({
{REGEXREPLACE(INDEX(IMPORTHTML("ScrA"; "table"; 1);;1)&""; ".+"; )&"ScrA"\
IMPORTHTML("ScrA"; "table"; 1)};
{REGEXREPLACE(INDEX(IMPORTHTML("ScrB"; "table"; 1);;1)&""; ".+"; )&"ScrB"\
IMPORTHTML("ScrB"; "table"; 1)}};
"where Col2 is not null"; 0))
我需要查询最多 50 个具有动态长度的源。这就是为什么它必须是一个多合一的命令。
每个源的长度经常变化。每个 Source 都有 RowA 作为 Primarykey。但是在查询所有源之后,密钥不再是唯一的。
假设我的来源是这样的:
SourceA SourceB SourceC
James 5 Jack 3 Jane 5
Steve 3 James 1 Steve 1
然后这个代码:
=Query({Importhtml("ScrA";"table";1); Importhtml("ScrB";"table";1); ...})
returns 这个: 结果:
James 5
Steve 3
Jack 3
James 1
Jane 4
Steve 1
如您所见,我不知道 "Steve" 来自哪个来源 - 但我需要知道...
有什么方法可以得到这样的结果(请记住,所有源的长度都在变化)?
ScrA James 5
ScrA Steve 3
ScrB Jack 3
ScrB James 1
ScrC Jane 4
ScrC Steve 1
你需要这样做:
=ARRAYFORMULA(QUERY({
{REGEXREPLACE(INDEX(IMPORTHTML("ScrA"; "table"; 1);;1)&""; ".+"; )&"ScrA"\
IMPORTHTML("ScrA"; "table"; 1)};
{REGEXREPLACE(INDEX(IMPORTHTML("ScrB"; "table"; 1);;1)&""; ".+"; )&"ScrB"\
IMPORTHTML("ScrB"; "table"; 1)}};
"where Col2 is not null"; 0))