下面的Postgresql查询应该返回以下日期类型ti varchar()类型,但它给出错误。我甚至尝试过转换(也使用return),但它仍然给出了错误。
CREATE FUNCTION TimePart( fDate out date )
--RETURNS date
AS $$
BEGIN
cast(fDate AS char(10));
END;
$$ language 'sql'
答案 0 :(得分:4)
假设您想要将date参数转换为某个varchar值的函数(您不需要执行任何函数 - 我在上面第5点指出的内容),您可以使用:
create function date_to_varchar(date) returns varchar as $$
select $1::varchar;
$$ language sql;
答案 1 :(得分:0)
试试这个:
CREATE FUNCTION TimePart( fDate out date )
--RETURNS date
AS $$
BEGIN
fDate := cast(fDate AS varchar(10));
END;
$$ language 'plpgsql'
如果您要使用变量,则需要使用plpgsql
作为语言。另外,使用varchar
。这样你就不必花费时间来减少它。
答案 2 :(得分:0)
要将输入日期转换为varchar,请尝试以下方法:
CREATE FUNCTION TimePart(fDate date)
RETURNS varchar AS
$$
BEGIN
return fDate::varchar;
END;
$$ LANGUAGE 'plpgsql';