使用plpython的PostgreSQL函数返回表

时间:2019-06-19 01:29:07

标签: postgresql plpython

我想返回桌子。 该函数获取一个数组(查询是从表名中选择“ select function_name(array_agg(column_name))”)

我在下面进行了编码:

my $dt = DateTime->new( year => 1900, time_zone => "UTC" );
$dt->add( seconds => 3747753982164.99 / 1000 );
say $dt->strftime("%Y-%m-%dT%H:%M:%S.%06N%z");  # 2018-10-05T18:45:55.000000+0000

此代码仅在一列上生成数组。 (浮动,浮动,浮动...)

我尝试了

create type pddesctype as(
    count float,
    mean float,
    std float,
    min float
);

create function pddesc(x numeric[])
returns pddesctype
as $$
    import pandas as pd
    data=pd.Series(x)

    count=data.describe()[0]
    mean=data.describe()[1]
    std=data.describe()[2]
    min=data.describe()[3]

    return count, mean, std, min

$$ language plpython3u;

但是有错误。 (地图中没有'count'键。 提示:要在列中返回null,请使用以该列命名的键将值None添加到映射。)

我想在每个列(如表)上显示所有结果而不创建类型。 如何更改RETURNS语法?

0 个答案:

没有答案