Vous pouvez faire comme ça
DELETE FROM table WHERE id NOT IN ( 2 )
OU
DELETE FROM table WHERE id <> 2
Comme @Frank Schmitt l'a noté, vous voudrez peut-être également faire attention aux valeurs NULL. Si vous souhaitez supprimer tout ce qui n'est pas 2
(y compris les NULL) puis ajoutez OR id IS NULL
à la clause WHERE.