【问题标题】:Some data removed after query查询后删除了一些数据
【发布时间】:2019-06-13 08:27:35
【问题描述】:

我有一个谷歌表https://docs.google.com/spreadsheets/d/1mUV9DpVJHC2UbyqOG49wUIRj3EflTlB9etJQFssRLvo/ 有一个列“Floor”,它包含数字和字符,我想查询该列并删除所有空单元格,=unique(query(A:A,"SELECT A WHERE A IS NOT NULL ORDER BY A")) 只查询数字并且所有字符都有已删除。

谁能建议我如何使用唯一和排序功能查询所有内容?

【问题讨论】:

    标签: google-sheets google-sheets-formula google-sheets-query


    【解决方案1】:

    我阅读了https://webapps.stackexchange.com/questions/101778/google-sheets-query-wont-display-cell-text-if-other-cells-have-numbers的文章并提出了解决方案,希望这可以帮助其他人。

    =UNIQUE(ARRAYFORMULA(QUERY(TO_TEXT(A2:A), "SELECT Col1 WHERE Col1 IS NOT NULL ORDER BY Col1")))
    

    使用 TO_TEXT() 的原因是因为 Google Sheet 中单个列中的混合数据类型,大多数数据类型决定了该列的数据类型以用于查询目的,因此我将所有数据类型转换为文本格式。 参考:https://support.google.com/docs/answer/3094285?hl=en

    UNIQUE 用于过滤掉所有重复值

    关于 ARRAYFORMULA() 函数,我不知道为什么需要它,但 QUERY() 将返回 #VALUE!如果缺少 ARRAYFORMULA()。

    如果有人可以解释 ARRAYFORMULA() 和 Col1 参考的使用,感谢回答。

    【讨论】:

      【解决方案2】:

      请改用过滤器功能。 考虑到 A 列既有数字又有字符。 在 B2 中,写: =filter(A2:A,isnumber(A2:A)) 如果您需要帮助,请告诉我!

      【讨论】:

      • 谢谢 Ken,但我也需要字符单元,LG 是下层,UG 是上层
      • 对不起,我误会了。那么在这种情况下,简单的方法如下: =sort(unique(filter(A2:B,A2:A""))),1,true) 这里,1 代表应该是列号排序的基础,true 表示升序。如果您需要进一步的帮助,请分享工作表。谢谢
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-26
      • 2017-06-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多