【发布时间】:2016-02-16 17:22:33
【问题描述】:
在 postgres 8.2 版上使用 Greenplum:
当我调用这个函数时:
CREATE OR REPLACE FUNCTION test_function(_date date)
RETURNS text AS
$BODY$
Declare
_query text;
_date text;
BEGIN
batch_query := 'select to_number('||_date||', ''9999x99x99'')';
EXECUTE _query into _date;
RETURN _date;
END;
$BODY$
LANGUAGE plpgsql VOLATILE;
使用此调用:
select test_function('2012-01-15');
结果是 1996 年。我希望结果是 20120115(这是我输入的不带破折号的日期)
由于这个功能,我如何得到 1996 年。当我输入其他日期时,我也会得到其他随机的“年份”。我在这里做错了什么?
【问题讨论】:
标签: sql postgresql function greenplum