I'm doing a procedure and I'm trying to pass a dynamic array into a CURSOR,
I found the sentence ANY but it's really slow. Is there any way to convert
all the elements in this array to IN condition or one select with unions?
For example,

BEGIN
  example CURSOR (codes integer[] )
   SELECT *
   FROM table_1
    WHERE code IN (3,5,7)

or

  example CURSOR (codes integer[] )
   SELECT *
   FROM table_1
    WHERE codi = 3
   UNION
   SELECT *
   FROM table_1
    WHERE codi = 5
   SELECT *
   FROM table_1
    WHERE codi = 7


DECLARE

  OPEN example(ARRAY[3,5,7]);
END;

Reply via email to