Google Sheet - 如何用一个 table 进行 FULL OUTER JOIN?
Google Sheet - How to FULL OUTER JOIN with one table?
我想为我的锦标赛创建一个 tables。
我创建了一个 table 与一些球员和他们的联盟。
我想按联赛生成对接会 table,就像那样
我对google传播sheet感到虚弱。
我知道我不能将“JOIN”与“QUERY()”函数一起使用。
看来我需要使用“ArrayFormula()”和“VLOOKUP()”函数,但经过几个小时的尝试,我失败了。
如果你们中有人能帮助我,那就太好了!
这是一个 googlesheet 数据:https://docs.google.com/spreadsheets/d/19ThnwVme8f3Ee730w8lTAyEJE9YdxzLEfox8arl5Q4o/edit?usp=sharing
非常感谢,我希望我的问题很清楚:)
编辑:似乎我们受到 REPT() 函数中字符数的限制。如果除了答案或“解决方法”之外还有其他解决方案,请随时分享它:)
尝试:
=ARRAYFORMULA(UNIQUE(QUERY(SPLIT(IF(
FLATTEN(SPLIT(REPT(CONCATENATE(IF(A3:A="";;A3:A&"♠"&B3:B&"♠"&C3:C)&"♦"); COUNTA(A3:A)); "♦"))<
FLATTEN(SPLIT(CONCATENATE(REPT(IF(A3:A="";;A3:A&"♠"&B3:B&"♠"&C3:C)&"♦"; COUNTA(A3:A))); "♦"));
FLATTEN(SPLIT(REPT(CONCATENATE(IF(A3:A="";;A3:A&"♠"&B3:B&"♠"&C3:C)&"♦"); COUNTA(A3:A)); "♦"))&"♠"&
FLATTEN(SPLIT(CONCATENATE(REPT(IF(A3:A="";;A3:A&"♠"&B3:B&"♠"&C3:C)&"♦"; COUNTA(A3:A))); "♦"));
FLATTEN(SPLIT(CONCATENATE(REPT(IF(A3:A="";;A3:A&"♠"&B3:B&"♠"&C3:C)&"♦"; COUNTA(A3:A))); "♦"))&"♠"&
FLATTEN(SPLIT(REPT(CONCATENATE(IF(A3:A="";;A3:A&"♠"&B3:B&"♠"&C3:C)&"♦"); COUNTA(A3:A)); "♦"))); "♠");
"select Col1,Col2,Col4,Col5,Col6
where Col1 <> Col4
and Col3 = Col6")))
无限制:
=INDEX(QUERY(SPLIT(FLATTEN(IF(
ROW(INDIRECT("A1:A"&COUNTA(A3:A)))<=TRANSPOSE(
ROW(INDIRECT("A1:A"&COUNTA(A3:A))));;
FILTER(A3:A&"♦"&B3:B&"♦"&C3:C; A3:A<>"")&"♦"&TRANSPOSE(
FILTER(A3:A&"♦"&B3:B&"♦"&C3:C; A3:A<>"")))); "♦");
"select Col4,Col5,Col1,Col2,Col6
where Col2 is not null
and Col3 = Col6
order by Col4"; 0))
我想为我的锦标赛创建一个 tables。 我创建了一个 table 与一些球员和他们的联盟。
我想按联赛生成对接会 table,就像那样
我对google传播sheet感到虚弱。 我知道我不能将“JOIN”与“QUERY()”函数一起使用。 看来我需要使用“ArrayFormula()”和“VLOOKUP()”函数,但经过几个小时的尝试,我失败了。
如果你们中有人能帮助我,那就太好了!
这是一个 googlesheet 数据:https://docs.google.com/spreadsheets/d/19ThnwVme8f3Ee730w8lTAyEJE9YdxzLEfox8arl5Q4o/edit?usp=sharing
非常感谢,我希望我的问题很清楚:)
编辑:似乎我们受到 REPT() 函数中字符数的限制。如果除了答案或“解决方法”之外还有其他解决方案,请随时分享它:)
尝试:
=ARRAYFORMULA(UNIQUE(QUERY(SPLIT(IF(
FLATTEN(SPLIT(REPT(CONCATENATE(IF(A3:A="";;A3:A&"♠"&B3:B&"♠"&C3:C)&"♦"); COUNTA(A3:A)); "♦"))<
FLATTEN(SPLIT(CONCATENATE(REPT(IF(A3:A="";;A3:A&"♠"&B3:B&"♠"&C3:C)&"♦"; COUNTA(A3:A))); "♦"));
FLATTEN(SPLIT(REPT(CONCATENATE(IF(A3:A="";;A3:A&"♠"&B3:B&"♠"&C3:C)&"♦"); COUNTA(A3:A)); "♦"))&"♠"&
FLATTEN(SPLIT(CONCATENATE(REPT(IF(A3:A="";;A3:A&"♠"&B3:B&"♠"&C3:C)&"♦"; COUNTA(A3:A))); "♦"));
FLATTEN(SPLIT(CONCATENATE(REPT(IF(A3:A="";;A3:A&"♠"&B3:B&"♠"&C3:C)&"♦"; COUNTA(A3:A))); "♦"))&"♠"&
FLATTEN(SPLIT(REPT(CONCATENATE(IF(A3:A="";;A3:A&"♠"&B3:B&"♠"&C3:C)&"♦"); COUNTA(A3:A)); "♦"))); "♠");
"select Col1,Col2,Col4,Col5,Col6
where Col1 <> Col4
and Col3 = Col6")))
无限制:
=INDEX(QUERY(SPLIT(FLATTEN(IF(
ROW(INDIRECT("A1:A"&COUNTA(A3:A)))<=TRANSPOSE(
ROW(INDIRECT("A1:A"&COUNTA(A3:A))));;
FILTER(A3:A&"♦"&B3:B&"♦"&C3:C; A3:A<>"")&"♦"&TRANSPOSE(
FILTER(A3:A&"♦"&B3:B&"♦"&C3:C; A3:A<>"")))); "♦");
"select Col4,Col5,Col1,Col2,Col6
where Col2 is not null
and Col3 = Col6
order by Col4"; 0))