Bird
Raised Fist0
Redisquery~5 mins

SET with expiry (EX, PX) in Redis - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What does the EX option do in the Redis SET command?
The EX option sets the expiration time for the key in seconds. After this time, the key will be automatically deleted.
Click to reveal answer
beginner
How is PX different from EX in the Redis SET command?
PX sets the expiration time in milliseconds, while EX sets it in seconds.
Click to reveal answer
beginner
Write a Redis command to set key 'session' with value 'abc123' that expires in 10 seconds.
SET session abc123 EX 10
Click to reveal answer
intermediate
What happens if you set a key with SET and an expiry, and then set it again without expiry?
The key will be updated with the new value and the expiry will be removed, so it will not expire unless set again.
Click to reveal answer
intermediate
Can you use both EX and PX options together in a single SET command?
No, you can only use one expiry option at a time: either EX (seconds) or PX (milliseconds). Using both will cause an error.
Click to reveal answer
What unit of time does the EX option use in Redis SET command?
AMilliseconds
BMinutes
CSeconds
DHours
Which Redis SET option sets expiry in milliseconds?
APX
BEX
CNX
DXX
What happens if you set a key with SET and EX 5, then set it again without expiry?
AThe key keeps the original expiry
BThe command fails
CThe key expires immediately
DThe key expiry is removed
Can you use both EX and PX options together in one SET command?
ANo, it causes an error
BYes, to set two expiries
CYes, PX overrides EX
DNo, but it sets the longer expiry
Which command sets key 'token' with value 'xyz' to expire in 500 milliseconds?
ASET token xyz EX 500
BSET token xyz PX 500
CSET token xyz EX 0.5
DSET token xyz PX 5
Explain how to set a key with an expiration time in Redis using the SET command.
Think about how you tell Redis to delete a key automatically after some time.
You got /4 concepts.
    What happens if you set a key with expiry and then overwrite it without expiry? Why is this important?
    Consider what happens to the timer when you update the key without expiry.
    You got /3 concepts.

      Practice

      (1/5)
      1. What does the EX option do when used with the Redis SET command?
      easy
      A. Sets the key to expire after a specified number of seconds
      B. Sets the key to expire after a specified number of milliseconds
      C. Sets the key without any expiration
      D. Deletes the key immediately after setting it

      Solution

      1. Step 1: Understand the EX option in Redis SET

        The EX option sets the expiration time in seconds for the key.
      2. Step 2: Compare EX with other expiry options

        PX sets expiry in milliseconds, so EX is specifically for seconds.
      3. Final Answer:

        Sets the key to expire after a specified number of seconds -> Option A
      4. Quick Check:

        EX = seconds expiry [OK]
      Hint: EX means seconds expiry, PX means milliseconds expiry [OK]
      Common Mistakes:
      • Confusing EX with PX and thinking EX is milliseconds
      • Assuming EX sets no expiry
      • Thinking EX deletes the key immediately
      2. Which of the following is the correct syntax to set a key session with value abc123 that expires in 10 seconds using Redis?
      easy
      A. SET session abc123 EXPIRE 10
      B. SET session EX 10 abc123
      C. SET session abc123 PX 10
      D. SET session abc123 EX 10

      Solution

      1. Step 1: Recall Redis SET command syntax with expiry

        The correct syntax is: SET key value EX seconds.
      2. Step 2: Check each option for correct order and keyword

        SET session abc123 EX 10 matches the correct order and uses EX for seconds expiry.
      3. Final Answer:

        SET session abc123 EX 10 -> Option D
      4. Quick Check:

        SET key value EX seconds = correct syntax [OK]
      Hint: Remember: SET key value EX seconds [OK]
      Common Mistakes:
      • Placing EX before the value
      • Using PX instead of EX for seconds
      • Using EXPIRE keyword inside SET command
      3. What will be the output of the following Redis commands executed in order?
      SET temp 100 PX 5000
      TTL temp
      medium
      A. An integer close to 5
      B. 5
      C. 0
      D. -1

      Solution

      1. Step 1: Understand PX expiry in SET command

        PX 5000 sets the key to expire in 5000 milliseconds (5 seconds).
      2. Step 2: Interpret TTL command output

        TTL returns time to live in seconds. Since expiry was set in milliseconds, TTL rounds to nearest second.
      3. Step 3: Predict TTL value

        TTL will return an integer close to 5 seconds, depending on execution time.
      4. Final Answer:

        An integer close to 5 -> Option A
      5. Quick Check:

        PX 5000 ms = ~5 seconds TTL [OK]
      Hint: TTL returns seconds even if PX used for expiry [OK]
      Common Mistakes:
      • Expecting TTL to return milliseconds
      • Thinking TTL returns 0 immediately
      • Assuming TTL returns -1 for keys with expiry
      4. Identify the error in this Redis command:
      SET user123 "John" EXPIRE 20
      medium
      A. Value should not be in quotes
      B. EXPIRE is not valid inside SET command
      C. Missing quotes around key
      D. EXPIRE should be PX for milliseconds

      Solution

      1. Step 1: Check Redis SET command syntax

        SET command uses EX or PX for expiry, not EXPIRE keyword.
      2. Step 2: Identify misuse of EXPIRE keyword

        EXPIRE is a separate command, not an option inside SET.
      3. Final Answer:

        EXPIRE is not valid inside SET command -> Option B
      4. Quick Check:

        Use EX or PX inside SET, not EXPIRE [OK]
      Hint: Use EX or PX with SET, EXPIRE is separate command [OK]
      Common Mistakes:
      • Using EXPIRE inside SET command
      • Confusing EXPIRE command with expiry option
      • Misplacing quotes around key or value
      5. You want to store a temporary API token in Redis that expires exactly after 1500 milliseconds. Which command correctly sets the key api_token with value xyz789 and the required expiry?
      hard
      A. SET api_token xyz789 EX 1.5
      B. SET api_token xyz789 EX 1500
      C. SET api_token xyz789 PX 1500
      D. SET api_token xyz789 PX 1.5

      Solution

      1. Step 1: Determine correct expiry option for milliseconds

        PX sets expiry in milliseconds, EX uses seconds only.
      2. Step 2: Check value format for PX

        PX requires integer milliseconds, so 1500 is valid, decimals like 1.5 are invalid.
      3. Step 3: Validate each option

        SET api_token xyz789 PX 1500 uses PX 1500 correctly; others use wrong units or decimals.
      4. Final Answer:

        SET api_token xyz789 PX 1500 -> Option C
      5. Quick Check:

        Milliseconds expiry = PX integer value [OK]
      Hint: Use PX with integer milliseconds for precise expiry [OK]
      Common Mistakes:
      • Using EX with decimal seconds
      • Using PX with decimal instead of integer
      • Confusing EX and PX units
      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