Tauphraen
Nombre de messages : 191 Date d'inscription : 27/11/2007
| Sujet: [RESOLU]Suppression des Sb, Amulet et Blueprint 13/09/08, 12:59 pm | |
| Bonjour, Je souhaiterai supprimer les spellbook, amulet et blueprint de la table droplist car mon server est en autolearn donc ils deviennent inutiles. J'ai écrit ces commandes SQL, je n'ai pas d'erreur mais rien ne se passe et cela me fait planter ma base. - Code:
-
DELETE FROM droplist WHERE itemId IN (SELECT name FROM etcitem WHERE name LIKE '%Amulet%'); DELETE FROM droplist WHERE itemId IN (SELECT name FROM etcitem WHERE name LIKE '%Spellbook%'); DELETE FROM droplist WHERE itemId IN (SELECT name FROM etcitem WHERE name LIKE '%Blueprint%'); Merci pour votre aide.
Dernière édition par Tauphraen le 14/09/08, 04:22 pm, édité 1 fois | |
|
Respawner
Nombre de messages : 1620 Age : 35 Date d'inscription : 20/04/2006
| Sujet: Re: [RESOLU]Suppression des Sb, Amulet et Blueprint 13/09/08, 01:44 pm | |
| T'essaies de comparer un ID et un nom ... - Code:
-
DELETE FROM droplist WHERE itemId IN (SELECT item_id FROM etcitem WHERE name LIKE '%Amulet%'); DELETE FROM droplist WHERE itemId IN (SELECT item_id FROM etcitem WHERE name LIKE '%Spellbook%'); DELETE FROM droplist WHERE itemId IN (SELECT item_id FROM etcitem WHERE name LIKE '%Blueprint%'); | |
|
phpsteuf
Nombre de messages : 570 Date d'inscription : 17/03/2007
| Sujet: Re: [RESOLU]Suppression des Sb, Amulet et Blueprint 13/09/08, 04:20 pm | |
| J'ajouterais que pour la rapidité il faut plutot faire une jointure que IN ou NOT IN car ceux ci n'utilisent pas les index contrairement au JOIN. Encore faut il avoir des index sur les champs traités | |
|
Jules
Nombre de messages : 384 Localisation : Rome Date d'inscription : 11/04/2008
| Sujet: Re: [RESOLU]Suppression des Sb, Amulet et Blueprint 14/09/08, 11:35 am | |
| En Avril, il y avait une erreur de certains types de bouquin, corrigé par : - Code:
-
UPDATE `etcitem` SET `item_type` = 'spellbook' WHERE `name` LIKE '%Battle manual%'; Ensuite, suffit de virer tout ce qui est de type spellbook : - Code:
-
DELETE FROM `droplist` WHERE `itemId` IN ( SELECT `item_id` FROM `etcitem` WHERE `item_type` = 'spellbook' ); On peut certainement executer la requête plus rapidement et avec moins de ressources qu'avec un IN, mais on s'en fout un peu. On ne l'execute qu'une fois de temps en temps...
Dernière édition par Jules le 14/09/08, 09:34 pm, édité 1 fois | |
|
Tauphraen
Nombre de messages : 191 Date d'inscription : 27/11/2007
| Sujet: Re: [RESOLU]Suppression des Sb, Amulet et Blueprint 14/09/08, 04:16 pm | |
| Merci pour vos réponses. Je vais essayer ça sur ma base test. EDIT : ça marche nickel ! J'ai vraiment merdé sur ma commande ! | |
|
phpsteuf
Nombre de messages : 570 Date d'inscription : 17/03/2007
| Sujet: Re: [RESOLU]Suppression des Sb, Amulet et Blueprint 14/09/08, 05:33 pm | |
| - Jules a écrit:
On peut certainement executer la requête plus rapidement et avec moins de ressources qu'avec un IN, mais on s'en fout un peu. On ne l'execute qu'une fois de temps en temps... J'avoue on ne travail pas sur des gros volumes là, déformation professionnelle | |
|
Contenu sponsorisé
| Sujet: Re: [RESOLU]Suppression des Sb, Amulet et Blueprint | |
| |
|