Postgresql函数返回表的变化



在函数调用中出现错误。错误是:

列参考"第2行:案例活动细节:它可以引用PL/PGSQL变量或表列

查询为:

CREATE FUNCTION convert()
RETURNS TABLE (customerid int, fname varchar, lname varchar, email varchar, tripDate timestamp, rental varchar)
Language plpgsql
AS $$
BEGIN
RETURN QUERY
SELECT CASE WHEN rental = 1 
THEN 'yes'
ELSE 'no'
END
FROM EML
END; $$;

change

SELECT CASE WHEN rental = 1 THEN 'yes'
WHEN rental = 0 THEN 'no'

SELECT 
CASE 
WHEN rental = 1 
THEN 'yes'
ELSE  'no'
END

编辑部分:

如果你不想只迭代二进制值,你应该添加这样的条件:

RETURN QUERY
SELECT 
CASE 
WHEN rental = 1 
THEN 'yes'
ELSE  'no'
END
FROM EML WHERE rental In(0, 1)

最新更新