Supprimer toutes les lignes à l'exception de

Lorsque j'exécute cette requête:

DELETE FROM `wp_posts` WHERE id NOT IN 
  (SELECT id FROM wp_posts WHERE post_status = 'publish')

Je reçois le message d'erreur suivant:

Vous ne pouvez pas spécifier une cible de table wp_posts " pour la mise à jour DE la clause

Pas sûr de ce que la syntaxe de la question est ici.

Le problème est que vous ne pouvez pas avoir la même table dans une sous-requête lors d'une DELETE. La façon dont les requêtes sont traitées serait la cause d'un comportement indéterminé s'il lui était permis.
gee, je souhaite que le message d'erreur serait le dire clairement...des messages d'erreur pour les nuls?

OriginalL'auteur keruilin | 2012-04-28