例如,我想为表中的每一行计算空字段。
我应该使用什么参数类型声明?
我尝试了复合类型(表名作为类型):
CREATE FUNCTION count_null (row my_table)
RETURNS INTEGER
AS $$
return len([x for x in row if x is None])
$$ LANGUAGE plpythonu;
但如果我把它称为:
,它与参数类型不匹配SELECT count_null(*) FROM my_table;
答案 0 :(得分:1)
假设您正在使用Postgres> = 9.3,您可以使用json转换完成此操作,如下所示:
$("your element").attr("attrname","your value")
这具有使用语言SQL而不是plpythonu的额外好处,因此查询规划器可以在一定程度上优化它。