The UPPER() function converts all letters in a string to uppercase letters.
Click to reveal answer
beginner
What is the purpose of the LOWER() function in MySQL?
The LOWER() function converts all letters in a string to lowercase letters.
Click to reveal answer
beginner
How would you convert the string 'Hello World' to all uppercase using MySQL?
Use the query: SELECT UPPER('Hello World'); which returns 'HELLO WORLD'.
Click to reveal answer
beginner
How can you convert a column named 'name' to lowercase in a SELECT query?
Use: SELECT LOWER(name) FROM table_name; This returns the 'name' values all in lowercase.
Click to reveal answer
intermediate
Why might you use UPPER() or LOWER() functions when comparing strings in SQL?
To make string comparisons case-insensitive by converting both strings to the same case before comparing.
Click to reveal answer
What will SELECT UPPER('mysql') return?
A'mysql'
B'mYsQl'
C'Mysql'
D'MYSQL'
✗ Incorrect
UPPER() converts all letters to uppercase, so 'mysql' becomes 'MYSQL'.
Which function converts all letters in a string to lowercase in MySQL?
ALOWCASE()
BUPPER()
CLOWER()
DTOLOWER()
✗ Incorrect
LOWER() is the correct function to convert strings to lowercase.
How would you write a query to select all names in uppercase from a table called users?
ASELECT name FROM users WHERE UPPER(name);
BSELECT UPPER(name) FROM users;
CSELECT LOWER(name) FROM users;
DSELECT TOUPPER(name) FROM users;
✗ Incorrect
SELECT UPPER(name) FROM users; converts the 'name' column values to uppercase.
If you want to compare two strings ignoring case, what should you do?
AEither A or B
BUse LOWER() on both strings before comparing
CUse UPPER() on both strings before comparing
DNo need to change case
✗ Incorrect
Converting both strings to the same case with UPPER() or LOWER() makes comparison case-insensitive.
What does SELECT LOWER('HELLO WORLD'); return?
A'hello world'
B'hElLo WoRlD'
C'Hello World'
D'HELLO WORLD'
✗ Incorrect
LOWER() converts all letters to lowercase, so 'HELLO WORLD' becomes 'hello world'.
Explain how UPPER() and LOWER() functions work in MySQL and give an example of each.
Think about changing letter cases in words.
You got /4 concepts.
Why is it useful to use UPPER() or LOWER() when comparing text data in SQL?
Consider comparing 'Apple' and 'apple'.
You got /3 concepts.
Practice
(1/5)
1. What does the MySQL function UPPER('hello') return?
easy
A. 'heLLo'
B. 'hello'
C. 'Hello'
D. 'HELLO'
Solution
Step 1: Understand the UPPER function
The UPPER function converts all letters in the input text to uppercase letters.
Step 2: Apply UPPER to 'hello'
Applying UPPER to 'hello' changes all letters to uppercase, resulting in 'HELLO'.
Final Answer:
'HELLO' -> Option D
Quick Check:
UPPER('hello') = 'HELLO' [OK]
Hint: UPPER makes all letters capital [OK]
Common Mistakes:
Thinking UPPER only capitalizes first letter
Confusing UPPER with LOWER
Expecting mixed case output
2. Which of the following is the correct syntax to convert the column name to lowercase in a SELECT query?
easy
A. SELECT LOWER(name) FROM users;
B. SELECT LOWER name FROM users;
C. SELECT name.LOWER() FROM users;
D. SELECT LOWER[name] FROM users;
Solution
Step 1: Recall correct function syntax
MySQL functions use the format FUNCTION_NAME(argument), so LOWER(name) is correct.
Step 2: Check each option
SELECT LOWER(name) FROM users; uses correct syntax: LOWER(name). Options A, B, and D use invalid syntax forms.
Final Answer:
SELECT LOWER(name) FROM users; -> Option A
Quick Check:
Correct function call syntax = SELECT LOWER(name) FROM users; [OK]
Hint: Use function_name(column) syntax for MySQL functions [OK]
Common Mistakes:
Omitting parentheses around column
Using dot or bracket notation incorrectly
Writing function name in lowercase without parentheses
3. Given a table products with a column category containing values 'Books', 'electronics', 'TOYS', what will the query SELECT DISTINCT UPPER(category) FROM products; return?
medium
A. ['Books', 'electronics', 'TOYS']
B. ['BOOKS', 'ELECTRONICS', 'TOYS']
C. ['books', 'electronics', 'toys']
D. ['BOOKS', 'electronics', 'TOYS']
Solution
Step 1: Understand UPPER and DISTINCT
UPPER converts all text to uppercase. DISTINCT removes duplicates from the result set.
Step 2: Apply UPPER to each category value
'Books' -> 'BOOKS', 'electronics' -> 'ELECTRONICS', 'TOYS' -> 'TOYS'. All become uppercase.
Step 3: Collect distinct uppercase values
All three are unique after conversion, so the result is ['BOOKS', 'ELECTRONICS', 'TOYS'].
Final Answer:
['BOOKS', 'ELECTRONICS', 'TOYS'] -> Option B
Quick Check:
UPPER + DISTINCT = uppercase unique values [OK]
Hint: UPPER changes all letters; DISTINCT removes duplicates [OK]
Common Mistakes:
Expecting original case values
Ignoring DISTINCT effect
Mixing uppercase and lowercase in output
4. Consider the query: SELECT LOWER('MySQL') FROM dual. It returns an error. What is the likely cause?
medium
A. The table 'dual' does not exist in MySQL by default
B. LOWER function is not supported in MySQL
C. The string 'MySQL' must be in uppercase already
D. Missing semicolon at the end of the query
Solution
Step 1: Understand the use of 'dual'
'dual' is a special table in Oracle but not present by default in MySQL.
Step 2: Check MySQL behavior
MySQL does not require 'FROM dual' for selecting expressions; using it causes an error if 'dual' table is missing.
Final Answer:
The table 'dual' does not exist in MySQL by default -> Option A
Quick Check:
MySQL lacks default 'dual' table [OK]
Hint: MySQL doesn't need 'FROM dual' for expressions [OK]
Common Mistakes:
Assuming 'dual' exists like in Oracle
Thinking LOWER is unsupported
Blaming missing semicolon
5. You want to find all users in the users table whose email ends with '@example.com', ignoring case differences. Which query correctly uses UPPER or LOWER to achieve this?
hard
A. SELECT * FROM users WHERE LOWER(email) LIKE '%@Example.com';
B. SELECT * FROM users WHERE LOWER(email) LIKE '%@EXAMPLE.COM';
C. SELECT * FROM users WHERE UPPER(email) LIKE '%@EXAMPLE.COM';
D. SELECT * FROM users WHERE email LIKE '%@example.com';
Solution
Step 1: Understand case-insensitive matching
To ignore case, convert both sides to the same case before comparing.
Step 2: Apply UPPER to email and pattern
Using UPPER(email) and matching with uppercase pattern '%@EXAMPLE.COM' ensures case-insensitive match.
Step 3: Check options
SELECT * FROM users WHERE UPPER(email) LIKE '%@EXAMPLE.COM'; correctly uses UPPER on email and uppercase pattern. SELECT * FROM users WHERE LOWER(email) LIKE '%@Example.com'; mismatches case in pattern. SELECT * FROM users WHERE email LIKE '%@example.com'; is case-sensitive. SELECT * FROM users WHERE LOWER(email) LIKE '%@EXAMPLE.COM'; mismatches case in pattern.
Final Answer:
SELECT * FROM users WHERE UPPER(email) LIKE '%@EXAMPLE.COM'; -> Option C
Quick Check:
Match cases on both sides using UPPER or LOWER [OK]
Hint: Match cases on both sides with UPPER or LOWER [OK]
Common Mistakes:
Not matching case of pattern and column
Assuming LIKE is case-insensitive by default
Mixing LOWER with uppercase pattern
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.