0
0
SQLquery~20 mins

UPDATE with expressions in SQL - Practice Problems & Coding Challenges

Choose your learning style9 modes available
Challenge - 5 Problems
🎖️
Master of UPDATE with expressions
Get all challenges correct to earn this badge!
Test your skills under time pressure!
query_result
intermediate
2:00remaining
Output of UPDATE with arithmetic expression
Given a table products with columns id, price, and stock, what will be the price of the product with id = 2 after running this query?

UPDATE products SET price = price + 10 WHERE id = 2;
SQL
SELECT price FROM products WHERE id = 2;
AThe price increases by 10 for product with id 2
BThe price decreases by 10 for product with id 2
CThe price remains the same for product with id 2
DSyntax error in the UPDATE statement
Attempts:
2 left
💡 Hint
Think about how the expression modifies the current price value.
query_result
intermediate
2:00remaining
Result of UPDATE with string concatenation
Consider a table users with columns id and username. What will be the new username for the user with id = 1 after executing?

UPDATE users SET username = username || '_2024' WHERE id = 1;
SQL
SELECT username FROM users WHERE id = 1;
AThe username will have '_2024' prepended at the start
BThe username will be replaced entirely by '_2024'
CThe username will have '_2024' appended at the end
DThe query will cause a syntax error
Attempts:
2 left
💡 Hint
The operator || concatenates strings in SQL.
📝 Syntax
advanced
2:00remaining
Identify the syntax error in UPDATE with expression
Which option contains a syntax error in the UPDATE statement that tries to increase salary by 5% for employees in department 10?
AUPDATE employees SET salary = salary * 5% WHERE department_id = 10;
BUPDATE employees SET salary = salary + salary * 0.05 WHERE department_id = 10;
CUPDATE employees SET salary = salary + (salary * 0.05) WHERE department_id = 10;
DUPDATE employees SET salary = salary * 1.05 WHERE department_id = 10;
Attempts:
2 left
💡 Hint
Check how percentages are expressed in SQL arithmetic.
🔧 Debug
advanced
2:00remaining
Why does this UPDATE not change any rows?
Given a table orders with columns order_id, status, and quantity, why does this query not update any rows?

UPDATE orders SET quantity = quantity + 1 WHERE status = 'shipped' AND quantity < 0;
AThe quantity column cannot be updated because it is a primary key
BNo rows have status 'shipped' with quantity less than 0
CThe syntax of the UPDATE statement is incorrect
DThe WHERE clause is missing parentheses causing a logic error
Attempts:
2 left
💡 Hint
Think about the data values that satisfy the WHERE condition.
🧠 Conceptual
expert
3:00remaining
Effect of multiple expressions in UPDATE
What will be the final values of score and level columns after running this query on a table players with one row where score = 100 and level = 2?

UPDATE players SET score = score + 50, level = level * 2 WHERE level = 2;
SQL
SELECT score, level FROM players WHERE level = 4;
Ascore = 50 and level = 4
Bscore = 100 and level = 4
Cscore = 150 and level = 2
Dscore = 150 and level = 4
Attempts:
2 left
💡 Hint
Both columns are updated in the same statement; the WHERE filters rows before update.