Bird
0
0

You want to categorize ages into 'Child' (0-12), 'Teen' (13-19), 'Adult' (20-64), and 'Senior' (65+). Which IF-ELSIF-ELSE block correctly implements this in PL/pgSQL?

hard📝 Application Q9 of 15
PostgreSQL - PL/pgSQL Fundamentals
You want to categorize ages into 'Child' (0-12), 'Teen' (13-19), 'Adult' (20-64), and 'Senior' (65+). Which IF-ELSIF-ELSE block correctly implements this in PL/pgSQL?
AIF age <= 12 THEN RETURN 'Child'; ELSEIF age <= 19 THEN RETURN 'Teen'; ELSEIF age <= 64 THEN RETURN 'Adult'; ELSE RETURN 'Senior'; END IF;
BIF age < 12 THEN RETURN 'Child'; ELSIF age < 19 THEN RETURN 'Teen'; ELSIF age < 64 THEN RETURN 'Adult'; ELSE RETURN 'Senior'; END IF;
CIF age <= 12 THEN RETURN 'Child'; ELSIF age <= 19 THEN RETURN 'Teen'; ELSIF age <= 64 THEN RETURN 'Adult'; ELSE RETURN 'Senior'; END IF;
DIF age < 12 THEN RETURN 'Child'; ELSIF age < 20 THEN RETURN 'Teen'; ELSIF age < 65 THEN RETURN 'Adult'; ELSE RETURN 'Senior'; END IF;
Step-by-Step Solution
Solution:
  1. Step 1: Define correct age ranges

    Child: 0-12 inclusive, Teen: 13-19 inclusive, Adult: 20-64 inclusive, Senior: 65+.
  2. Step 2: Check each option's conditions

    IF age <= 12 THEN RETURN 'Child'; ELSIF age <= 19 THEN RETURN 'Teen'; ELSIF age <= 64 THEN RETURN 'Adult'; ELSE RETURN 'Senior'; END IF; uses <= correctly to include boundary ages. IF age < 12 THEN RETURN 'Child'; ELSIF age < 19 THEN RETURN 'Teen'; ELSIF age < 64 THEN RETURN 'Adult'; ELSE RETURN 'Senior'; END IF; and D use < which excludes boundary ages incorrectly. IF age <= 12 THEN RETURN 'Child'; ELSEIF age <= 19 THEN RETURN 'Teen'; ELSEIF age <= 64 THEN RETURN 'Adult'; ELSE RETURN 'Senior'; END IF; uses invalid ELSEIF keyword.
  3. Final Answer:

    IF age <= 12 THEN RETURN 'Child'; ELSIF age <= 19 THEN RETURN 'Teen'; ELSIF age <= 64 THEN RETURN 'Adult'; ELSE RETURN 'Senior'; END IF; -> Option C
  4. Quick Check:

    Use <= for inclusive ranges and ELSIF keyword [OK]
Quick Trick: Use <= for inclusive ranges; ELSIF, not ELSEIF [OK]
Common Mistakes:
  • Using ELSEIF instead of ELSIF
  • Using < instead of <= causing boundary errors
  • Misplacing ELSE block

Want More Practice?

15+ quiz questions · All difficulty levels · Free

Free Signup - Practice All Questions
More PostgreSQL Quizzes