J'essaie de supprimer tous les utilisateurs de mysql.user Sauf pour les utilisateurs "1" et "2";
J'ai couru cette commande mais il a également supprimé l'utilisateur "1" et "2"; p> i essayé p> même résultat, l'utilisateur "1" et "2" sont supprimés. p> p>
3 Réponses :
Vous pouvez utiliser la raison pour laquelle les deux sont incluses sont simples. pas dans code> 1 <> 2 code> et 2 <> 1 code>. p> p>
@Sumerkolcak <> code> signifie "non égal à"
Je n'avais aucune idée <> code> signifiait 'non égal à', ils ressemblent à "plus gros que" et "plus petit que" les symboles ". Je suppose que le monde a avancé.
Ceci devrait fonctionner à l'aide de Le problème avec votre requête est le Votre requête fonctionnerait avec vs: p> SQL Fiddle Demo avec ou P> P> pas dans code>: ou code> - il enlève l'autre parce que 1 n'est pas égal à 2 et vice versa. p> et code>: p>
Merci, je vais avec et code> étant donné qu'il est plus en ligne avec la logique.
Supprimer de MySQL.User où l'utilisateur n'est pas in ('1', '2') p>
Incroyable, cela fonctionne aussi mais je préfère et code> parce que les codes ont vraiment besoin de loger. J'ai même pensé que cela aurait dû être ou code> pour qu'il soit vraiment logique.
Ce ne serait pas
et code>?Je pense que "et" est l'endroit où plusieurs conditions pour la même ligne.
Et fonctionne - voir ma réponse ci-dessous ...
Pensez-y simplement en termes de langue anglaise: «Supprimer de l'utilisateur où l'utilisateur n'est pas égal à 1 et l'utilisateur n'est pas égal à 2." Dans le cas de
ou code> il dirait "... ne correspond pas à l'utilisateur 1 ou i> n'est pas égal à 2." Si l'utilisateur est 1, il satisfait que la condition "ne correspond pas à 2" et vice versa.ok je l'ai testé,
et code> fonctionne réellement.