Google 表格查询函数 returns 使用 ORDER By 时有 0 行
Google Sheets query function returns 0 rows when using ORDER By
我可以使用 QUERY
函数从另一个 sheet 获取行,但是如果我尝试使用 ORDER BY
我什么也得不到。奇怪的是,如果我用 DESC
做 ORDER BY
它确实有效。
我的例子 sheet 在 https://docs.google.com/spreadsheets/d/18I-GsBzTLtuxwh8sdqeeLb0kLHMc8Z3EpFcN6s17CSU/edit?usp=sharing.
这是我的 QUERY
函数,只有 returns header 行:
=query(source!A:C, "SELECT A, B, C ORDER BY C")
以下两个都有效:
=query(source!A:C, "SELECT A, B, C")
=query(source!A:C, "SELECT A, B, C ORDER BY C DESC")
第一个 returns 所有行,第二个 returns 所有行按 C 列排序。
我是不是漏掉了什么?
按 C 排序是将您的值放在底部,因为空白单元格的值将它们放在较高位置。例如,如果我将行数减少到只有 20,您会发现您的公式确实有效,只是它们位于底部:
试试这个公式:=QUERY(source!,"SELECT A,B,C WHERE A IS NOT NULL ORDER BY C")
这会过滤掉空白单元格,并且应该按照您的期望对值进行排序。
我可以使用 QUERY
函数从另一个 sheet 获取行,但是如果我尝试使用 ORDER BY
我什么也得不到。奇怪的是,如果我用 DESC
做 ORDER BY
它确实有效。
我的例子 sheet 在 https://docs.google.com/spreadsheets/d/18I-GsBzTLtuxwh8sdqeeLb0kLHMc8Z3EpFcN6s17CSU/edit?usp=sharing.
这是我的 QUERY
函数,只有 returns header 行:
=query(source!A:C, "SELECT A, B, C ORDER BY C")
以下两个都有效:
=query(source!A:C, "SELECT A, B, C")
=query(source!A:C, "SELECT A, B, C ORDER BY C DESC")
第一个 returns 所有行,第二个 returns 所有行按 C 列排序。
我是不是漏掉了什么?
按 C 排序是将您的值放在底部,因为空白单元格的值将它们放在较高位置。例如,如果我将行数减少到只有 20,您会发现您的公式确实有效,只是它们位于底部:
试试这个公式:=QUERY(source!,"SELECT A,B,C WHERE A IS NOT NULL ORDER BY C")
这会过滤掉空白单元格,并且应该按照您的期望对值进行排序。