Projet php/mySQL

Fermé
mannou_h Messages postés 2 Date d'inscription mardi 10 décembre 2013 Statut Membre Dernière intervention 11 décembre 2013 - Modifié par mannou_h le 10/12/2013 à 20:08
mannou_h Messages postés 2 Date d'inscription mardi 10 décembre 2013 Statut Membre Dernière intervention 11 décembre 2013 - 11 déc. 2013 à 17:38
Bonjour,
je cherche un projet qui a pour but de bein assimiler le concept d'index et son utilisation
dans les bases des données ,cette application implémente un algorithme de selection utilisant les index et un algorithme de jointure n'utilisant pas les index.
je souhaite que vous m'aidez svp et merci d'avance.


A voir également:

4 réponses

enqueteactualite Messages postés 70 Date d'inscription mercredi 11 décembre 2013 Statut Membre Dernière intervention 16 mai 2015 16
11 déc. 2013 à 01:47
Pour comprendre les index c'est simple :
imagine une table qui comporte 1 000 000 de lignes et que tu fais une requête qui te donne uniquement les lignes qui on la colone "active" à 1...

sans index : mysql passe sur toutes les lignes ( 1 000 000 ) pour savoir si la colonne comporte la valeur 1.
avec un index sur la colonne "active" et bien mysql sait déjà quel ligne porte la valeur 1...

c'est comme si je te demandé de me calculer 5 + 17 : si tu index ton addition, le jour ou ont vas te reposer la question tu ne fera pas le calcul, tu regardera directement ou tu as stocké la réponse ;)
1
loupix57 Messages postés 316 Date d'inscription mercredi 20 mars 2013 Statut Membre Dernière intervention 1 juin 2015 14
10 déc. 2013 à 23:39
Sinon ; les jointures SQL ça s'apprend en 1ère année de lycée !
En France.

Voila l'idée :
vous avez une table client (id, nom, prenom, adresse, etc ..)
une autre table commande(id_client, commande)

la jointure se fait sur ce genre de requête :

SELECT *
FROM client
INNER JOIN commande_client ON (client.id = commande.id_client)

en espérant été assez clair :-)
0
loupix57 Messages postés 316 Date d'inscription mercredi 20 mars 2013 Statut Membre Dernière intervention 1 juin 2015 14
Modifié par loupix57 le 10/12/2013 à 23:40
Sans index .. ah bah merde ...
0
mpmp93 Messages postés 6648 Date d'inscription mercredi 13 avril 2011 Statut Membre Dernière intervention 28 septembre 2015 1 339
11 déc. 2013 à 10:06
Bonjour,

Pour les grosses BDD (bases de données), il est fortement recommandé d'indexer tous les champs sur lesquels on effectue des filtrages.

Exemple, vous aves une BDD clients. Pour chaque fiche client il y a le code postal. eh bien il est recommandé d'indexer le code postal SI on fait ce genre de choses:

SELECT * FROM clients WHERE code_postal Like '92%'


Les performances sont multipliées d'un facteur 10 à 1000. C'est pas sensible sur les petites tables, mais très visible si on atteint des volumétries très importantes...

Ensuite, l'indexation est quasi-obligatoire sur les champs sur lesquels on fait des jointures.

Parler de jointures sans indexer va poser un gros souci de performances sur de grosses tables.

Moi j'dis ça....


0
mannou_h Messages postés 2 Date d'inscription mardi 10 décembre 2013 Statut Membre Dernière intervention 11 décembre 2013
11 déc. 2013 à 17:38
merci pour pour vous :)
0