Last modified on 12 October 2014, at 10:54

Structured Query Language/DELETE 1

UPDATE 1 Structured Query Language
DELETE 1
SELECT: Join Operation


Hint: Be carefull and deactivate AUTOCOMMIT.

The DELETE command removes rows from a table.

DELETE FROM <tablename>
WHERE       <search_condition>;

The syntax is very simple as we do not need to specify any columnname - rows are deleted as a whole and not partly. As usual the search condition specifies the criterion which identifies the affected rows. It can involve zero, one or more rows. If we omit the WHERE keyword and the search condition all rows are affected.

ExampleEdit

-- Delete one row
DELETE FROM person
WHERE  lastname = 'Burton';
 
-- It's only a test. Restore the row.
ROLLBACK;

The information about Mr. Burton was deleted and restored again.

Further InformationEdit

We present some more information about the DELETE command here. There are also some comments to the interconnection with the TRUNCATE command.

ExercisesEdit

Delete the hobby 'Yoga'.

Click to see solution
-- Delete one row
DELETE FROM hobby
WHERE  hobbyname = 'Yoga';
-- or: WHERE  id = 6;
 
ROLLBACK; -- if we want to restore the row
COMMIT;   -- if we want to commit our work
 
-- Check the result
SELECT * FROM hobby;

Delete all relations between persons and hobbies. Check result. Restore all rows.

Click to see solution
-- compact syntax - great impact
DELETE FROM person_hobby;
 
-- Check the result
SELECT * FROM person_hobby;
 
-- restore everything
ROLLBACK;


UPDATE 1 Structured Query Language
DELETE 1
SELECT: Join Operation