Delete only some rows from a table based on a condition in MySQL



Let us first create a table −

mysql> create table DemoTable    -> (    -> Id int,    -> Name varchar(20)    -> ); Query OK, 0 rows affected (0.60 sec)

Insert some records in the table using insert command:

Insert some records in the table using insert command: mysql> insert into DemoTable values(100,'Bob'); Query OK, 1 row affected (0.14 sec) mysql> insert into DemoTable values(101,'Chris'); Query OK, 1 row affected (0.19 sec) mysql> insert into DemoTable values(102,'David'); Query OK, 1 row affected (0.14 sec) mysql> insert into DemoTable values(103,'Sam'); Query OK, 1 row affected (0.08 sec) mysql> insert into DemoTable values(104,'Carol'); Query OK, 1 row affected (0.10 sec)

Display all records from the table using select statement −

mysql> select *from DemoTable;

This will produce the following output −

+------+-------+ | Id   | Name  | +------+-------+ | 100  | Bob   | | 101  | Chris | | 102  | David | | 103  | Sam   | | 104  | Carol | +------+-------+ 5 rows in set (0.00 sec)

Following is the query to delete only limited rows from a table −

mysql> delete from DemoTable    -> where Id > 102; Query OK, 2 rows affected (0.10 sec)

Let us check the table records once again −

mysql> select *from DemoTable;

This will produce the following output −

+------+-------+ | Id   | Name  | +------+-------+ | 100  | Bob   | | 101  | Chris | | 102  | David | +------+-------+ 3 rows in set (0.00 sec)
Updated on: 2019-12-18T05:20:41+05:30

475 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements