SQL Delete
SQL Delete records from a table
The SQL DELETE command is used to delete rows or records from a table.
Syntax:
DELETE FROM { table_name | ONLY (table_name) } [{ WHERE search_condition | WHERE CURRENT OF cursor_name }]
Parameter:
Name | Description |
---|---|
table_name | Name of the table. |
search_condition | specify a search condition (logical expression) that has one or more conditions. |
Syntax diagram - DELETE STATEMENT

Table of Contents :
Sample tables associated with this page have shown bellow:
Sample table: daysorder
Sample table: customer1
To remove all rows from the table 'daysorder', the following SQL statement can be used :
DELETE FROM daysorder;
Output:

SQL deleting records with where
In this page, we are going to discuss, how the WHERE clause along with SQL DELETE command can be used to remove number of rows against some conditions.
Example:
To remove rows from the table 'customer1' with the following condition -
1. 'cust_country' must be 'Canada',
the SQL statement can be used:
SQL Code
DELETE FROM customer1
WHERE cust_country='Canada';
Output:

SQL Delete records using comparison operators
In this page, we are going to discuss, how the COMPARISON operator along with SQL DELETE command can be used to remove specific rows from a table.
Sample tables associated with this page have shown bellow:
Sample table: customer1
Sample table: daysorder
Example
To remove rows from the table 'customer1' with the following condition -
1. 'cust_country' must be 'India',
2. 'cus_city' must not be 'Chennai',
the following SQL statement can be used :
SQL Code:
DELETE FROM customer1
WHERE cust_country='India'
AND cust_city<>'Chennai';
Output:

SQL delete records using IN operator
In this page, we are going to discuss, how the SQL IN operator along with SQL DELETE command can be used to remove specific rows from a table.
Example:
To remove rows from the table 'daysorder' with the following condition -
1. 'advance_amount' should be other than 1000 and 2000,
the following SQL statement can be used:
SQL Code:
DELETE FROM daysorder
WHERE advance_amount
NOT IN(1000,2000);
Output:

SQL delete records using BETWEEN operator
In this page, we are going to discuss, how the SQL BETWEEN operator along with SQL DELETE command can be used to remove specific rows from a table.
Example:
To remove rows from the table 'daysorder' with the following condition -
1. 'advance_amount' should be within the range of 100 and 800,
the following SQL statement can be used:
SQL Code:
DELETE FROM daysorder
WHERE advance_amount
BETWEEN 100 AND 800;
Output:

SQL delete records using LIKE operator
In this page, we are going to discuss, how the SQL LIKE operator along with SQL DELETE command can be used to remove specific rows from a table.
Example:
To remove rows from the table 'customer1' with the following condition -
1. 'cust_city' should begin with the letter 'L',
the following SQL statement can be used:
SQL Code:
DELETE FROM customer1
WHERE cust_city
LIKE 'L%';
Output:

Check out our 1000+ SQL Exercises with solution and explanation to improve your skills.
Previous: UPDATE using subqueries
Next: SQL Delete with subqueries
- Weekly Trends
- Python Interview Questions and Answers: Comprehensive Guide
- Scala Exercises, Practice, Solution
- Kotlin Exercises practice with solution
- MongoDB Exercises, Practice, Solution
- SQL Exercises, Practice, Solution - JOINS
- Java Basic Programming Exercises
- SQL Subqueries
- Adventureworks Database Exercises
- C# Sharp Basic Exercises
- SQL COUNT() with distinct
- JavaScript String Exercises
- JavaScript HTML Form Validation
- Java Collection Exercises
- SQL COUNT() function
- SQL Inner Join