Dan Sebastian
Dan Sebastian

Reputation: 539

SQL syntax: delete several rows with values (id)

What's the MySQL syntax for deleting a certain number of rows, say, from id_1 to id_10, in the same table?

Also, if I wanted not to delete id_5, what syntax would I use?

Upvotes: 0

Views: 87

Answers (2)

Niagaradad
Niagaradad

Reputation: 463

To delete with the range and skip a value:

DELETE
FROM yourtable
WHERE id BETWEEN 1 AND 10 AND id !=5

Upvotes: 1

ScaisEdge
ScaisEdge

Reputation: 133360

for not delete id_5

delete from table where id != 'id_5' 

for delete a list

delete from table where id in ('id_1', 'id_2', 'id_3', 'id_4', 
       'id_6', 'id_7', 'id_8', 'id_9', 'id_10');

for delete an ordered range

delete from table where id between 'id_1' and 'id_10';

or combined

delete from table where id between 'id_1' and 'id_10' and id!='id_5';

Upvotes: 1

Related Questions