我在
postgresql(版本9.4.4)中有一个相当复杂的功能,我需要一些帮助.
我在我的函数中声明了一个循环(下面有大量工作):
CREATE OR REPLACE function getRSI(
psymbol varchar,pstarttime timestamp with time zone,pendtime timestamp with time zone,pduration double precision,ptable varchar
)
RETURNS SETOF rsi AS
$BODY$
declare
row_data record;
-- some variables
begin
FOR row_data IN SELECT datetime,value FROM "4" WHERE symbol = 'AAPL'
AND datetime BETWEEN '2015-11-23 09:30:00 -0500' AND
'2015-11-23 15:59:59-0500' LOOP
-- enter code here
END LOOP;
end
$BODY$LANGUAGE plpgsql
这很完美,我可以得到我的功能的结果,并让它为我的所有数字.
我想让循环像这样工作:
FOR row_data in select datetime,value from quote_ident(ptable)
where symbol = quote_literal(psymbol) and datetime
between quote_literal(pstart