Indexer et utiliser les mêmes types de colonnes pour les jointures

F O R U M S (milbako.com) F O R U M S (milbako.com) Base de données Mysql Indexer et utiliser les mêmes types de colonnes pour les jointures

  • Ce sujet contient 0 réponse, 1 participant et a été mis à jour pour la dernière fois par lotfi, le il y a 1 mois.
  • Créateur
    Sujet
  • #16087
    lotfi
    Maître des clés
    • 32
    Up
    0
    Down

    Si votre application contient de nombreuses requêtes JOIN, vous devez vous assurer que les colonnes que vous joignez sont indexées sur les deux tables. Cela affecte la façon dont MySQL optimise en interne l’opération de jointure.

    En outre, les colonnes qui sont jointes doivent être du même type. Par exemple, si vous joignez une colonne DECIMAL à une colonne INT d’une autre table, MySQL ne pourra pas utiliser au moins un des index. Même les encodages de caractères doivent être du même type pour les colonnes de type chaîne.

    // recherche d'entreprises dans mon état
    $r = mysql_query("SELECT company_name FROM users
        LEFT JOIN companies ON (users.state = companies.state)
        WHERE users.id = $user_id");
     
    //les deux colonnes d'état doivent être indexées 
    // et elles doivent toutes les deux être du même type et du même codage de caractères 
    // ou MySQL peut effectuer des analyses de table complètes

    see You soon
    www.milbako.com
    e-mail : Webmaster

  • Vous devez être connecté pour répondre à ce sujet.
Translate »