tv1*_*902 0 sql function typecasting-operator amazon-redshift
我正在触发一个使用 PERCENTILE_CONT() 函数的查询,如下所示:
select .....
PERCENTILE_CONT(0.90) within group (order by END_DATE-START_DATE)
from ....
where .....
;
Run Code Online (Sandbox Code Playgroud)
现在,当我从 Oracle DB 中的 SQLDeveloper 触发该查询时,该查询完全可以正常工作,但由于某种原因,我需要使用 RedShift 数据库,当我在其中触发上述查询时,它会抛出如下错误:
ERROR: function percentile_cont(interval, numeric) does not exist
Hint: No function matches the given name and argument types. You may need to add explicit type casts.`
Run Code Online (Sandbox Code Playgroud)
正如建议的那样,我尝试使用类型转换为 DECIMAL 和 INTEGER 类型,但出现了相同的错误。
我搜索了文档,但也无法从那里找到解决方案。有什么想法吗,为什么?
PS:无法放置标签 PERCENTILE_CONT,因为它的声誉较低。
这有效吗?
PERCENTILE_CONT(0.90) within group (order by datediff(day, START_DATE, END_DATE)
Run Code Online (Sandbox Code Playgroud)
我猜问题是日期差异。