我的工作是返回一个整数:
CREATE FUNCTION my_function() RETURNS INTEGER AS $$
SELECT 1 AS result;
$$ LANGUAGE SQL;
但我想让它返回一个字符串,所以我把它调整为:
CREATE FUNCTION my_function() RETURNS TEXT AS $$
SELECT '1' AS result;
$$ LANGUAGE SQL;
但这失败了:
ERROR: return type mismatch in function declared to return text
DETAIL: Actual return type is unknown.
发生什么事了?如何返回字符串' 1'?
答案 0 :(得分:1)
字符串文字的类型为unknown
。您可以明确指定类似的类型:
SELECT TEXT '1' AS result;