【问题标题】:Only return Unique values with Join and Filter functions仅使用 Join 和 Filter 函数返回唯一值
【发布时间】:2020-08-20 22:12:05
【问题描述】:

我有一个详细的摩托车零件数据集。我正在尝试根据来自多个工作表的数据创建一个年份、品牌、模型表。

这是我在目标 Google 表格中的函数:

=JOIN(",",FILTER('YMM Handlebars'!H:H,'YMM Handlebars'!A:A=A8))

由于数据量大,我遇到了这个错误的问题:

Error
Text result of JOIN is longer than the limit of 50000 characters.

如果我可以删除从过滤器返回的重复值,我可以获得 Join down 的字符数。我尝试了这两种方法,但都没有解决重复值问题:

=JOIN(",",UNIQUE(FILTER('YMM Handlebars'!H:H,'YMM Handlebars'!A:A=A8)))
=JOIN(",",FILTER(UNIQUE('YMM Handlebars'!H:H),'YMM Handlebars'!A:A=A8))

关于如何解决的任何想法?提前感谢您抽出宝贵的时间。

【问题讨论】:

  • 分享您的工作表副本

标签: arrays join google-sheets filter google-sheets-query


【解决方案1】:

你可以细分你的范围:

=JOIN(",", FILTER('YMM Handlebars'!H1:H1000,    'YMM Handlebars'!A1:A1000=A8))&","&
 JOIN(",", FILTER('YMM Handlebars'!H1001:H2000, 'YMM Handlebars'!A1001:A2000=A8))

或者不使用JOIN:

=ARRAYFORMULA(QUERY(QUERY(IF('YMM Handlebars'!A:A=A8, 'YMM Handlebars'!H:H&",", ), 
 "where Col1 is not null", 0),, 9^9))

更新:

=ARRAYFORMULA(QUERY(UNIQUE(FILTER(TRIM('YMM Handlebars'!H:H)&",", 
 'YMM Handlebars'!A:A=A8)),, 9^9))

【讨论】:

  • 感谢@player0,感谢您的时间。数组公式可能有效,但它不仅仅返回唯一值。所以结果的 sn-p 是:Model_XL 1200CP、Model_XL 1200CP、Model_XL 1200CX ROADSTER (LM)、Model_XL 1200T SUPERLOW 1200T、Model_XL 1200T SUPERLOW 1200T ...所以我需要确保它们只返回唯一值
  • @dbp 你能分享一份你的工作表吗?
  • 工作表是私有的
  • 呃,对不起。试试这个docs.google.com/spreadsheets/d/…
猜你喜欢
  • 2020-02-22
  • 1970-01-01
  • 1970-01-01
  • 2021-12-23
  • 2021-05-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-04-11
相关资源
最近更新 更多