如何在自定义 Presto 聚合函数中强制执行排序 (ORDER BY)

问题描述

我正在编写一个自定义 Presto 聚合函数,当(且仅当)值按我聚合的值按升序排序时,该函数会产生正确的结果。即

以下将起作用:

SELECT key,MY_AGG_FUNC(value ORDER BY value ASC) FROM my_table GROUP BY key

以下将产生错误的结果:

SELECT key,MY_AGG_FUNC(value) FROM my_table GROUP BY key

在开发 MY_AGG_FUNC 时,是否有一种方法可以在内部强制执行 ORDER BY value ASC,而无需依赖调用者将其添加到查询中?

作为替代方案,如果用户根本没有指定 ORDER BY(或不正确的排序),有没有办法抛出异常?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)