Bird
Raised Fist0
PostgreSQLquery~5 mins

Interval type for durations in PostgreSQL - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is the interval type used for in PostgreSQL?
The interval type stores a duration of time, like days, hours, minutes, or seconds, representing a span between two points in time.
Click to reveal answer
beginner
How do you create an interval of 3 days in PostgreSQL?
You can write INTERVAL '3 days' to represent a duration of three days.
Click to reveal answer
beginner
Can you add an interval to a timestamp in PostgreSQL? Give an example.
Yes. For example, SELECT timestamp '2024-06-01 10:00' + INTERVAL '2 hours'; adds 2 hours to the timestamp.
Click to reveal answer
intermediate
What units can you use inside an interval literal in PostgreSQL?
You can use units like years, months, days, hours, minutes, seconds, and combinations like '1 year 2 months 3 days'.
Click to reveal answer
advanced
How does PostgreSQL store intervals internally?
PostgreSQL stores intervals as three parts: months, days, and microseconds, allowing flexible representation of durations.
Click to reveal answer
Which of these is a valid interval literal in PostgreSQL?
AINTERVAL '5 hours 30 minutes'
BINTERVAL 5 hours 30 minutes
C'5 hours 30 minutes' INTERVAL
DINTERVAL(5 hours 30 minutes)
What does SELECT INTERVAL '1 day' + INTERVAL '2 hours'; return?
AAn interval of 3 days
BAn error because you cannot add intervals
CAn interval of 1 day and 2 hours
DA timestamp value
How do you subtract 30 minutes from a timestamp in PostgreSQL?
Atimestamp - INTERVAL '30 minutes'
Btimestamp + INTERVAL '30 minutes'
Ctimestamp - '30 minutes'
Dtimestamp - 30
Which part is NOT stored separately inside a PostgreSQL interval?
AMonths
BYears
CMicroseconds
DDays
What happens if you add an interval to a date in PostgreSQL?
AYou get a timestamp with time zone
BYou get an error
CThe interval is ignored
DYou get a new date shifted by the interval
Explain what the PostgreSQL interval type is and how you can use it with timestamps.
Think about how you tell time differences or add time in real life.
You got /4 concepts.
    Describe the internal storage structure of PostgreSQL intervals and why it matters.
    Consider how different units of time are handled inside the database.
    You got /4 concepts.

      Practice

      (1/5)
      1. What does the interval type in PostgreSQL represent?
      easy
      A. A numeric value for counting rows
      B. A specific date and time
      C. A duration of time like hours, days, or months
      D. A text string describing time

      Solution

      1. Step 1: Understand the interval type purpose

        The interval type is designed to store durations, not fixed points in time.
      2. Step 2: Compare with other types

        Unlike timestamp or date types, interval holds a length of time like '3 days' or '2 hours'.
      3. Final Answer:

        A duration of time like hours, days, or months -> Option C
      4. Quick Check:

        Interval = Duration [OK]
      Hint: Interval means duration, not a fixed date/time [OK]
      Common Mistakes:
      • Confusing interval with timestamp
      • Thinking interval stores exact dates
      • Assuming interval is a string
      2. Which of the following is the correct way to declare an interval of 5 days in PostgreSQL?
      easy
      A. INTERVAL 5 days
      B. INTERVAL '5 days'
      C. '5 days' INTERVAL
      D. INTERVAL 'days 5'

      Solution

      1. Step 1: Recall interval literal syntax

        PostgreSQL requires the interval value to be a string inside single quotes after the INTERVAL keyword.
      2. Step 2: Check each option

        Only INTERVAL '5 days' matches the correct syntax; others are invalid or reversed.
      3. Final Answer:

        INTERVAL '5 days' -> Option B
      4. Quick Check:

        Interval syntax = INTERVAL 'value unit' [OK]
      Hint: Use INTERVAL followed by quoted string for durations [OK]
      Common Mistakes:
      • Omitting quotes around the duration
      • Placing INTERVAL after the string
      • Swapping number and unit order
      3. What is the result of this query?
      SELECT CURRENT_DATE + INTERVAL '3 days';
      medium
      A. The current date minus 3 days
      B. The current date as text
      C. An error because you cannot add interval to date
      D. The date 3 days after today

      Solution

      1. Step 1: Understand adding interval to date

        Adding an interval to a date shifts the date forward by that duration.
      2. Step 2: Apply the interval '3 days'

        Adding '3 days' to CURRENT_DATE results in a date 3 days later than today.
      3. Final Answer:

        The date 3 days after today -> Option D
      4. Quick Check:

        Date + Interval = Date shifted forward [OK]
      Hint: Adding interval to date moves date forward [OK]
      Common Mistakes:
      • Thinking it subtracts days
      • Expecting a text output
      • Believing it causes an error
      4. Identify the error in this query:
      SELECT CURRENT_TIMESTAMP + '2 hours';
      medium
      A. Missing INTERVAL keyword before '2 hours'
      B. CURRENT_TIMESTAMP cannot be used with intervals
      C. Quotes around '2 hours' should be double quotes
      D. No error, query is correct

      Solution

      1. Step 1: Check interval usage with timestamp

        To add a duration, the value must be an interval type, declared with INTERVAL keyword.
      2. Step 2: Analyze the query

        The string '2 hours' lacks INTERVAL keyword, so PostgreSQL will error.
      3. Final Answer:

        Missing INTERVAL keyword before '2 hours' -> Option A
      4. Quick Check:

        Interval keyword required for durations [OK]
      Hint: Always use INTERVAL before quoted duration strings [OK]
      Common Mistakes:
      • Omitting INTERVAL keyword
      • Using wrong quotes
      • Assuming timestamp can't add intervals
      5. You want to find the date 1 month and 15 days after January 10, 2024. Which query gives the correct result?
      hard
      A. SELECT DATE '2024-01-10' + INTERVAL '1 month' + INTERVAL '15 days';
      B. SELECT DATE '2024-01-10' + INTERVAL '1 month + 15 days';
      C. SELECT DATE '2024-01-10' + INTERVAL '45 days';
      D. SELECT DATE '2024-01-10' + INTERVAL '1.5 months';

      Solution

      1. Step 1: Understand interval addition

        Adding intervals separately ensures correct handling of months and days.
      2. Step 2: Evaluate each option

        SELECT DATE '2024-01-10' + INTERVAL '1 month + 15 days'; tries to combine units in one string, which is invalid syntax. SELECT DATE '2024-01-10' + INTERVAL '45 days'; adds 45 days, which is not exactly 1 month and 15 days. SELECT DATE '2024-01-10' + INTERVAL '1.5 months'; uses fractional months, which PostgreSQL does not support directly.
      3. Final Answer:

        SELECT DATE '2024-01-10' + INTERVAL '1 month' + INTERVAL '15 days'; -> Option A
      4. Quick Check:

        Separate intervals for months and days [OK]
      Hint: Add months and days as separate intervals for accuracy [OK]
      Common Mistakes:
      • Combining units in one interval string
      • Using fractional months
      • Adding days as total instead of separate
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard