Bird
Raised Fist0
MySQLquery~5 mins

Why DML operations modify data in MySQL - Performance Analysis

Choose your learning style10 modes available
Time Complexity: Why DML operations modify data
O(n)
Understanding Time Complexity

When we use commands that change data in a database, like adding or updating rows, it takes some time to do that work.

We want to understand how the time needed grows as we change more data.

Scenario Under Consideration

Analyze the time complexity of the following code snippet.


INSERT INTO employees (name, position) VALUES ('Alice', 'Manager');
UPDATE employees SET position = 'Senior Manager' WHERE name = 'Alice';
DELETE FROM employees WHERE name = 'Alice';
    

This code adds a new employee, updates their position, then removes them from the table.

Identify Repeating Operations
  • Primary operation: Searching rows to find where to insert, update, or delete.
  • How many times: Depends on how many rows the database checks to find the right place.
How Execution Grows With Input

As the table gets bigger, the database may need to check more rows to find where to change data.

Input Size (n)Approx. Operations
10About 10 checks
100About 100 checks
1000About 1000 checks

Pattern observation: The work grows roughly in direct proportion to the number of rows.

Final Time Complexity

Time Complexity: O(n)

This means the time to modify data grows roughly in step with the number of rows in the table.

Common Mistake

[X] Wrong: "Modifying one row always takes the same time no matter how big the table is."

[OK] Correct: The database often needs to look through many rows to find the right one, so bigger tables usually take more time.

Interview Connect

Understanding how data changes take longer with bigger tables helps you explain how databases work efficiently in real projects.

Self-Check

"What if we add an index on the column used in the WHERE clause? How would the time complexity change?"

Practice

(1/5)
1. Which of the following DML commands is used to add new rows to a table in MySQL?
easy
A. UPDATE
B. SELECT
C. DELETE
D. INSERT

Solution

  1. Step 1: Understand the purpose of DML commands

    DML commands modify data in tables by adding, changing, or removing rows.
  2. Step 2: Identify the command for adding data

    INSERT adds new rows, UPDATE changes existing rows, DELETE removes rows, and SELECT only reads data.
  3. Final Answer:

    INSERT -> Option D
  4. Quick Check:

    Add new rows = INSERT [OK]
Hint: INSERT adds rows, UPDATE changes, DELETE removes [OK]
Common Mistakes:
  • Confusing UPDATE with INSERT
  • Thinking SELECT modifies data
  • Using DELETE to add data
2. Which of the following is the correct syntax to update a user's email in a table named users?
easy
A. SELECT email = 'new@example.com' FROM users WHERE id = 5;
B. INSERT INTO users SET email = 'new@example.com' WHERE id = 5;
C. UPDATE users SET email = 'new@example.com' WHERE id = 5;
D. DELETE FROM users SET email = 'new@example.com' WHERE id = 5;

Solution

  1. Step 1: Recognize the correct DML command for changing data

    To change existing data, UPDATE is used with SET to assign new values.
  2. Step 2: Check syntax correctness

    UPDATE users SET email = 'new@example.com' WHERE id = 5; correctly updates the email for user with id 5.
  3. Final Answer:

    UPDATE users SET email = 'new@example.com' WHERE id = 5; -> Option C
  4. Quick Check:

    Update data uses UPDATE + SET + WHERE [OK]
Hint: UPDATE uses SET and WHERE to change data [OK]
Common Mistakes:
  • Using INSERT instead of UPDATE to modify data
  • Omitting WHERE clause causing all rows to update
  • Using DELETE or SELECT incorrectly
3. Given the table products with columns id, name, and price, what will be the result of this query?
UPDATE products SET price = price * 1.1 WHERE id = 3;
medium
A. The price of the product with id 3 will increase by 10%.
B. All product prices will increase by 10%.
C. The product with id 3 will be deleted.
D. Syntax error due to missing WHERE clause.

Solution

  1. Step 1: Understand the UPDATE statement with WHERE clause

    The query updates only rows where id = 3, so only that product is affected.
  2. Step 2: Analyze the price update expression

    The price is multiplied by 1.1, increasing it by 10% for the product with id 3.
  3. Final Answer:

    The price of the product with id 3 will increase by 10%. -> Option A
  4. Quick Check:

    UPDATE with WHERE affects specific rows [OK]
Hint: WHERE limits UPDATE to specific rows [OK]
Common Mistakes:
  • Assuming all rows update without WHERE
  • Confusing UPDATE with DELETE
  • Thinking syntax error occurs without WHERE
4. Identify the error in this DELETE statement:
DELETE users WHERE id = 10;
medium
A. Missing FROM keyword after DELETE.
B. WHERE clause cannot be used with DELETE.
C. DELETE cannot remove rows based on conditions.
D. Table name should be in quotes.

Solution

  1. Step 1: Recall correct DELETE syntax

    The correct syntax is DELETE FROM table_name WHERE condition;. The FROM keyword is required.
  2. Step 2: Identify the missing keyword

    The statement misses FROM after DELETE, causing a syntax error.
  3. Final Answer:

    Missing FROM keyword after DELETE. -> Option A
  4. Quick Check:

    DELETE requires FROM before table name [OK]
Hint: DELETE syntax: DELETE FROM table WHERE condition [OK]
Common Mistakes:
  • Omitting FROM keyword
  • Using DELETE without WHERE to remove specific rows
  • Quoting table names unnecessarily
5. You want to increase the salary by 5% for all employees in the employees table who work in the 'Sales' department. Which query correctly performs this update?
hard
A. DELETE FROM employees WHERE department = 'Sales';
B. UPDATE employees SET salary = salary * 1.05 WHERE department = 'Sales';
C. INSERT INTO employees SET salary = salary * 1.05 WHERE department = 'Sales';
D. UPDATE employees WHERE department = 'Sales' SET salary = salary * 1.05;

Solution

  1. Step 1: Choose the correct DML command for modifying existing data

    To change salaries, UPDATE is used, not INSERT or DELETE.
  2. Step 2: Verify correct syntax order

    The correct syntax is UPDATE table SET column = value WHERE condition;. UPDATE employees SET salary = salary * 1.05 WHERE department = 'Sales'; follows this order correctly.
  3. Final Answer:

    UPDATE employees SET salary = salary * 1.05 WHERE department = 'Sales'; -> Option B
  4. Quick Check:

    UPDATE + SET + WHERE with correct order [OK]
Hint: UPDATE SET comes before WHERE clause [OK]
Common Mistakes:
  • Using INSERT to modify data
  • Placing WHERE before SET in UPDATE
  • Deleting rows instead of updating
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