如何在Redshift中获取UDF列表?

时间:2015-10-12 14:20:18

标签: amazon-redshift

有没有简单的方法来获取Redshift中可用的所有UDF的列表? 此外,我想找到具有参数类型的UDF并按名称搜索UDF。

1 个答案:

答案 0 :(得分:17)

您可以查询pg_proc表以获取所有可用的UDF。

按名称过滤

您可以使用proname列按名称进行过滤:

SELECT * FROM pg_proc WHERE proname ILIKE '%<name_here>%';

按参数类型

过滤

您可以使用proargtypes列按参数类型进行过滤:

SELECT * FROM pg_proc WHERE proargtypes = 1043;

此处1043varchar,可以通过查询pg_type表来看到:

SELECT * FROM pg_type WHERE typname ILIKE '%char%';

按参数名称

过滤

您还可以使用proargnames列按参数名称进行过滤:

SELECT * FROM pg_proc WHERE proargnames = ARRAY['foo'];

<强> 参考文献:

http://docs.aws.amazon.com/redshift/latest/dg/c_join_PG.html

http://www.postgresql.org/docs/8.0/static/catalog-pg-proc.html