Comment cherche rapidemt dans une grande tab

Résolu
bitar -  
 bitar -
comment je peux avoir un id dnas une table tres grand le plus rapidement possible
Configuration: Windows 2000
Firefox 2.0.0.6

7 réponses

  1. Reivax962 Messages postés 3742 Statut Membre 1 011
     
    Le mieux, c'est de définir un index sur ta colonne products_SKU.

    Pour faire ça, exécute une fois la requête suivante :
    CREATE INDEX ind_SKU ON products (products_SKU);

    Si le products_SKU est unique dans la table, tu peux même accélérer les choses en mettant UNIQUE :
    CREATE UNIQUE INDEX ind_SKU ON products (products_SKU);

    Plus d'informations : http://dev.mysql.com/doc/refman/5.0/fr/mysql-indexes.html

    Et ne pas utiliser LIKE, surtout avec un % au début de la recherche... LIKE n'a aucune chance d'être plus rapide que =.
    1
    1. bitar
       
      merci bcp ca marche nikel
      0
    2. Reivax962 Messages postés 3742 Statut Membre 1 011
       
      Juste pour information, tu aurais une estimation du temps que tu gagnes ?
      Combien de temps pour la requête avant l'indexation, et après ?

      Merci,

      Xavier
      0
      1. bitar > Reivax962 Messages postés 3742 Statut Membre
         
        avant pour 90000 enregistrement il prend eviron 3 heure mais apres il prend 10 min
        0
  2. Mcmurphy Messages postés 115 Statut Membre 7
     
    tu le cherche dans la base de donné ou depuis un prog ???
    0
  3. Mcmurphy Messages postés 115 Statut Membre 7
     
    Tu le cherche dans ta base de donné depuis un prog ??
    0
  4. bitar
     
    je lance une requete "select" dans php mais ca prend bcp temps de recupere une id car la table est tres grande est ce que il y a une autre facons de recupere l'id .
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Mcmurphy Messages postés 115 Statut Membre 7
     
    peu tu me montrer ta requéte ?? ta table a combien dentrer aproximativement ??
    0
  7. bitar
     
    j'ai environ cent mille enregistrement et ma requete est
    "SELECT products_id FROM `products` WHERE products_SKU= '".$pdt[3]."'";
    le pdt[3] c'est une information qui est unique pour chaque entregistrement aussi
    0
    1. Mcmurphy Messages postés 115 Statut Membre 7
       
      a tu pensera utiliser un like ???
      0
  8. bitar
     
    c'est le meme chose, il prend bcp temps de verifie si le cette enregistrement existe or no
    0