複数行の問い合わせ結果を扱いたい場合はFOR IN SELECT文やFOR IN EXECUTE文を用いればよい。
FOR record | row IN select_query LOOP statements END LOOP;
FOR record | row IN EXECUTE sql LOOP statements END LOOP;
statements内で結果を返したい場合はRETURNではなく、RETURN NEXTを使わなければいけない。たとえばこんな感じ。
FOR row_data IN SELECT * FROM table WHERE ticket_id= id LOOP IF row_data.value > 1000 THEN RETURN NEXT row_data; END IF; END LOOP;