我正在使用Postgresql ver 8.4并编写了以下自定义分组功能:
CREATE OR REPLACE FUNCTION custom_group(integer) RETURNS TABLE ( grp INTEGER,entry_date DATE,col1 REAL,col2 REAL,col3 REAL,col4 REAL,col5 INTEGER,col6 INTEGER) AS $BODY$ SELECT ceil(rank() OVER (ORDER BY entry_date) / $1)::int as grp,entry_date,col1,col2,col3,col4,col5,col6 FROM table_foo ORDER BY 1; $BODY$LANGUAGE sql;
Final statement returns bigint instead of integer
我不明白错误信息,特别是因为我期待一个RECORD(井表)类型.
[[编辑]]
我按照评论中的建议将grp数据类型更改为BIGINT,但是我得到了同样的错误.细节:
ERROR: return type mismatch in function declared to return record DETAIL: Final statement returns integer instead of bigint at column 1. CONTEXT: sql function "custom_group"
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。