【发布时间】:2014-04-15 04:35:01
【问题描述】:
我正在尝试为我的查询创建一个存储过程:
SELECT count(DISTINCT account_number)
from account
NATURAL JOIN branch
WHERE branch.branch_city='Albany';
或
SELECT count(*)
from (
select distinct account_number
from account
NATURAL JOIN branch
WHERE branch.branch_city='Albany'
) as x;
我已经编写了这个存储过程,但它返回列中所有记录的计数而不是查询结果,而且我需要在 plpgsql 中而不是 SQL 中编写存储过程。
CREATE FUNCTION account_count_in(branch_city varchar) RETURNS int AS $$
PERFORM DISTINCT count(account_number) from (account NATURAL JOIN branch)
WHERE (branch.branch_city=branch_city); $$ LANGUAGE SQL;
帮助我在plpgsql中编写这种类型的存储过程,返回返回指定城市的分支机构管理的帐户数。
【问题讨论】:
标签: sql postgresql stored-procedures plpgsql