【发布时间】:2014-05-06 17:43:39
【问题描述】:
我有一张桌子years(每只耳朵的 1 月 1 日)。我想创建一个函数,该函数需要每一年并在另一个表上运行查询以计算属于那一年的行数。我尝试使用 pl/pgsql 实现,使用下面的代码,但我没有让它工作或在 Internet 上找到任何参考。
CREATE or REPLACE FUNCTION func_test(in AAA date, OUT _result int)
BEGIN
SELECT SUM(st_length(geom)) as BBB
FROM hist_line
WHERE '2006-01-01' BETWEEN valid_from AND COALESCE(valid_to, '9999-12-31');
RETURN _result BBB;
END;
$$ LANGUAGE plpgsql;
CREATE or REPLACE FUNCTION func_test(date)
select func_test('2009-01-01');
我无法将函数内部的内容查询恢复为函数的输出。
【问题讨论】:
-
那么,你使用 Oracle 还是 Postgresql?
-
@Guneli:我用的是Postgresql
标签: sql postgresql plpgsql sql-function