LearnThatStack Ace your next interview
MySQL · question
Question 3 of 42

Explain the difference between DELETE, DROP, and TRUNCATE.

beginner
← All MySQL questions
Re-explain

DELETE removes chosen rows, TRUNCATE TABLE empties the whole table at once, and DROP TABLE removes the table itself along with its data.

  • DELETE removes the rows its WHERE clause matches, fires ON DELETE triggers and can be rolled back. It is slower because it deletes rows one by one.
  • TRUNCATE drops and re-creates the table, which is much faster than DELETE on large tables. In MySQL it causes an implicit commit, so it cannot be rolled back. It does not fire ON DELETE triggers, and it resets the AUTO_INCREMENT counter.
  • DROP removes the table definition, all its data and its triggers. It also causes an implicit commit and is very fast.

For InnoDB, TRUNCATE fails if a foreign key in another table references the table.

-- DELETE specific rows
DELETE FROM users WHERE age < 18;

-- TRUNCATE all data
TRUNCATE TABLE users;

-- DROP entire table
DROP TABLE users;
Rewriting in plainer words…

This answer doesn't lend itself to a diagram - it reads best . No credits were charged.

Why there's no diagram: “”

The interactive diagram is below the answer - jump to diagram ↓ · Below it, the related concept . Jump to it ↓

The diagram below the answer is the concept . Jump to it ↓

Tailored explanation · switch back to · ·
What should the new diagram focus on?
How well did you know this?
AI:

Saved in this browser - sign in to keep your review list.

How should your speech become text?

Listening… your words appear above as you speak - tap Stop when you're done.

Recording · cr - tap Stop & transcribe when you're done.

Transcribing with AI…

Voice:

Keep going - a few more words and AI can grade it.

Interview lens

Likely follow-ups, what you can say, and the weak answers to avoid.

Sign in free to open it Free account - the lens opens as soon as you're back.

Want a quick review of the fundamentals? See the MySQL cheatsheet.

← Back to all MySQL questions
Pro · $10/mo

37 of 42 MySQL answers are in Pro.

Full answers, code samples, and AI explanations that go simpler or deeper. Cancel anytime.

  • Full answers + code
  • AI explanations, simpler or deeper
  • 1,000 AI credits / month
  • Cancel anytime