Bird
0
0

Consider this function:

medium📝 query result Q4 of 15
PostgreSQL - Advanced PL/pgSQL

Consider this function:

CREATE FUNCTION get_numbers() RETURNS SETOF integer AS $$ BEGIN RETURN NEXT 1; RETURN NEXT 2; RETURN NEXT 3; END; $$ LANGUAGE plpgsql;

What will SELECT * FROM get_numbers(); return?

A3 rows with values 3, 2, 1
B1 row with value 3
C3 rows with values 1, 2, 3
DNo rows returned
Step-by-Step Solution
Solution:
  1. Step 1: Understand RETURN NEXT behavior

    Each RETURN NEXT adds one row to the result set in order.
  2. Step 2: Analyze the function calls

    RETURN NEXT 1; then 2; then 3; means rows 1, 2, and 3 are returned in that order.
  3. Final Answer:

    3 rows with values 1, 2, 3 -> Option C
  4. Quick Check:

    RETURN NEXT adds rows sequentially [OK]
Quick Trick: RETURN NEXT adds rows one by one in order [OK]
Common Mistakes:
  • Thinking only last RETURN NEXT value is returned
  • Assuming rows are reversed
  • Expecting no rows without RETURN QUERY

Want More Practice?

15+ quiz questions · All difficulty levels · Free

Free Signup - Practice All Questions
More PostgreSQL Quizzes