Bird
Raised Fist0
MySQLquery~5 mins

SUBSTRING and LEFT/RIGHT in MySQL - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What does the SUBSTRING function do in MySQL?
SUBSTRING extracts a part of a string starting from a specified position for a given length.
Click to reveal answer
beginner
How does the LEFT function work in MySQL?
LEFT returns the leftmost characters from a string, based on the number of characters you specify.
Click to reveal answer
intermediate
What is the difference between SUBSTRING and LEFT functions?
SUBSTRING can start extracting from any position in the string, while LEFT always starts from the beginning (left side).
Click to reveal answer
beginner
How does the RIGHT function work in MySQL?
RIGHT returns the rightmost characters from a string, based on the number of characters you specify.
Click to reveal answer
beginner
Write a MySQL query to get the first 5 characters of the string 'HelloWorld'.
SELECT LEFT('HelloWorld', 5); -- This returns 'Hello'
Click to reveal answer
What will SUBSTRING('Database', 3, 4) return?
Ataba
Babas
CData
Dbase
Which function extracts characters from the right side of a string?
ARIGHT
BLEFT
CSUBSTRING
DMID
What does LEFT('OpenAI', 3) return?
Apen
BOpe
CAI
DenA
If you want to extract characters starting from the 2nd character to the end, which function and syntax is correct?
ARIGHT(string, 2)
BLEFT(string, 2)
CSUBSTRING(string, 2)
DSUBSTRING(string, 1, 2)
What will RIGHT('Database', 4) return?
AData
Base
Ctaba
Dbase
Explain how to use SUBSTRING, LEFT, and RIGHT functions to extract parts of a string in MySQL.
Think about where you want to start and how many characters you want.
You got /4 concepts.
    Describe a real-life scenario where you might use LEFT or RIGHT functions in a database query.
    Consider common string parts like prefixes or suffixes.
    You got /3 concepts.

      Practice

      (1/5)
      1. What does the MySQL function LEFT('Hello World', 5) return?
      easy
      A. 'World'
      B. 'Hello'
      C. 'Hello World'
      D. 'WorldHello'

      Solution

      1. Step 1: Understand LEFT function

        The LEFT function extracts a specified number of characters from the start (left side) of a string.
      2. Step 2: Apply LEFT to 'Hello World'

        Extracting 5 characters from the start of 'Hello World' gives 'Hello'.
      3. Final Answer:

        'Hello' -> Option B
      4. Quick Check:

        LEFT('Hello World', 5) = 'Hello' [OK]
      Hint: LEFT gets characters from the start of the string [OK]
      Common Mistakes:
      • Confusing LEFT with RIGHT function
      • Expecting the whole string instead of part
      • Using wrong number of characters
      2. Which of the following is the correct syntax to extract 3 characters starting from the 2nd character in MySQL?
      easy
      A. RIGHT('abcdef', 2, 3)
      B. LEFT('abcdef', 2, 3)
      C. SUBSTRING('abcdef', 2, 3)
      D. SUBSTRING('abcdef', 3, 2)

      Solution

      1. Step 1: Recall SUBSTRING syntax

        SUBSTRING(string, start_position, length) extracts length characters starting at start_position.
      2. Step 2: Check each option

        SUBSTRING('abcdef', 2, 3) uses SUBSTRING with start=2 and length=3, which is correct. LEFT and RIGHT do not accept three arguments.
      3. Final Answer:

        SUBSTRING('abcdef', 2, 3) -> Option C
      4. Quick Check:

        Correct SUBSTRING syntax = SUBSTRING('abcdef', 2, 3) [OK]
      Hint: SUBSTRING needs start and length; LEFT/RIGHT only need length [OK]
      Common Mistakes:
      • Using LEFT or RIGHT with three arguments
      • Swapping start and length values
      • Starting count from zero instead of one
      3. What is the result of this query?
      SELECT SUBSTRING('Database', 5, 3) AS part1, LEFT('Database', 4) AS part2, RIGHT('Database', 2) AS part3;
      medium
      A. part1='bas', part2='Data', part3='se'
      B. part1='base', part2='Data', part3='se'
      C. part1='tab', part2='D', part3='se'
      D. part1='bas', part2='Datab', part3='se'

      Solution

      1. Step 1: Calculate SUBSTRING('Database', 5, 3)

        Starting at position 5: 'D'(1), 'a'(2), 't'(3), 'a'(4), 'b'(5), 'a'(6), 's'(7), 'e'(8). Characters 5 to 7 are 'b', 'a', 's' -> 'bas'.
      2. Step 2: Calculate LEFT('Database', 4) and RIGHT('Database', 2)

        LEFT takes first 4 chars: 'D', 'a', 't', 'a' -> 'Data'. RIGHT takes last 2 chars: 's', 'e' -> 'se'.
      3. Final Answer:

        part1='bas', part2='Data', part3='se' -> Option A
      4. Quick Check:

        SUBSTRING, LEFT, RIGHT results match part1='bas', part2='Data', part3='se' [OK]
      Hint: Count characters carefully starting at 1 for SUBSTRING [OK]
      Common Mistakes:
      • Counting start position from zero
      • Mixing up LEFT and RIGHT results
      • Extracting wrong substring length
      4. Identify the error in this query:
      SELECT LEFT('Example', 3, 2) AS result;
      medium
      A. LEFT function does not accept three arguments
      B. String 'Example' is too short
      C. Missing FROM clause
      D. RIGHT function should be used instead

      Solution

      1. Step 1: Check LEFT function syntax

        LEFT(string, length) accepts only two arguments: the string and number of characters from the left.
      2. Step 2: Analyze the query

        The query uses three arguments in LEFT, which is invalid syntax and causes an error.
      3. Final Answer:

        LEFT function does not accept three arguments -> Option A
      4. Quick Check:

        LEFT syntax error = LEFT function does not accept three arguments [OK]
      Hint: LEFT only needs string and length, no extra arguments [OK]
      Common Mistakes:
      • Adding extra arguments to LEFT or RIGHT
      • Confusing LEFT with SUBSTRING syntax
      • Ignoring syntax errors in function calls
      5. You have a column full_name with values like 'John Smith'. Which query extracts the last 5 characters of full_name to get the last name part using MySQL functions?
      hard
      A. SELECT SUBSTRING(full_name, 6, 5) AS last_name FROM users;
      B. SELECT LEFT(full_name, 5) AS last_name FROM users;
      C. SELECT SUBSTRING(full_name, -5) AS last_name FROM users;
      D. SELECT RIGHT(full_name, 5) AS last_name FROM users;

      Solution

      1. Step 1: Understand the requirement

        We want the last 5 characters of the full_name, which is the last name part 'Smith' in 'John Smith'.
      2. Step 2: Choose the correct function

        RIGHT(string, length) extracts characters from the end. RIGHT(full_name, 5) returns last 5 characters.
      3. Step 3: Check other options

        LEFT extracts from start, SUBSTRING with negative start is invalid in MySQL, and SUBSTRING with fixed start 6 may fail if names vary.
      4. Final Answer:

        SELECT RIGHT(full_name, 5) AS last_name FROM users; -> Option D
      5. Quick Check:

        RIGHT gets last characters = SELECT RIGHT(full_name, 5) AS last_name FROM users; [OK]
      Hint: Use RIGHT to get characters from the end of a string [OK]
      Common Mistakes:
      • Using LEFT instead of RIGHT for last characters
      • Using SUBSTRING with negative start (not supported)
      • Assuming fixed position for last name
      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