IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes MySQL Discussion :

Commande MySQL pour supprimer rapidement une partie d'une table


Sujet :

Requêtes MySQL

  1. #1
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2013
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Janvier 2013
    Messages : 54
    Points : 48
    Points
    48
    Par défaut Commande MySQL pour supprimer rapidement une partie d'une table
    Bonjour,

    Je possède une table MySQL contenant trois colonnes :
    - Un id
    - Une chaine de caractères
    - Un flag (qui est un boolean)

    Je voudrais supprimer toutes les lignes dans la table qui contiennent le boolean à "false".

    Voici l'instruction que j'utilise :
    "delete from `test`.`panierv2` where panierv2.flag=false"

    Cette instruction est cependant lente car elle doit vérifier chaque ligne et ma table pourra contenir des millions de données.

    Pourriez-vous m'indiquer si il existe un moyen pour effectuer des effacements plus rapidement (Instructions MySQL, etc...) ?

  2. #2
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 173
    Points : 5 345
    Points
    5 345
    Par défaut
    bonjour,

    Dans tous les cas il vous faut un index sur cette colonne.

    Ensuite :
    - Si la valeur "false" est peut présente => lancer la requete tel quelle
    - Si la valeur "false" représente la majorité des lignes de la table => créer une nouvelle table en insérant les lignes à "true" et droppez la table d'origine (faut que ca en vaille le coup, l'index pourra surement suffir...)

  3. #3
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2013
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Janvier 2013
    Messages : 54
    Points : 48
    Points
    48
    Par défaut
    Bonjour punkoff,
    Votre réponse m'a permis d'augmenter très rapidement l'exécution de mes requêtes!

    Avec mes remerciements et cordialement,

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 23/04/2013, 15h57
  2. donner une couleur a une partie d'une forme
    Par ralf91 dans le forum Windows Forms
    Réponses: 4
    Dernier message: 04/04/2008, 17h02
  3. Sélectionner seulement une partie d'une valeur d'une cellule
    Par ArthurO0O dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 20/08/2007, 11h05
  4. masquer une partie d'une vidéo par une banniere
    Par lezabour dans le forum Général Conception Web
    Réponses: 1
    Dernier message: 16/10/2006, 16h47
  5. copier une partie d'une image vers une autre
    Par gregcat dans le forum Langage
    Réponses: 1
    Dernier message: 14/04/2006, 13h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo