1

getitems(id)この ID に関連するすべての行を提供する関数があります。

getitemsPostgreSQL に func1 という名前の関数があり、アイテムのリスト全体を返す必要があります。

CREATE OR REPLACE FUNCTION func1(listof_id integer[])
  RETURNS SETOF newtype AS
$BODY$  

for item in listof_id:
    x=plpy.execute("SELECT * FROM getitems(%s)"%item)

return x;
$BODY$
  LANGUAGE plpythonu VOLATILE
  COST 100;

現在、最後の反復の値を含む x を返します ( のgetitems最後の id の結果listof_id)。各反復を最後に追加するように変更するにはどうすればよいですか?

私はやろうとしました:

x={}
for item in listof_id:
    x+=plpy.execute("SELECT * FROM getitems(%s)"%item)

そしてそれはうまくいきません...

4

1 に答える 1