Tom's Guide > Forum > Programmation > [résolu]Explication sur les jointures en SQL

[résolu]Explication sur les jointures en SQL

Forum Programmation : [résolu]Explication sur les jointures en SQL

TomsGuide.com : 800 000 inscrits répondent à toutes vos questions high-tech et informatique. Pour obtenir de l'aide, inscrivez-vous gratuitement !
Mot :    Pseudo :           
 

Bonjour a tous et a toutes...

Je suis en train de développer un forum sympa mais qui a mon gout contient trop de requete SQL (j'emploi pour le moment des mysql_query() de partout)
Or avec le temps, je me rend compte que le langage SQL est bourré de petits plus qui peuvent supprimer pas mal de requete (dernièrement j'ai par exemple remarqué que 3 mysql_query('UPDATE xxxx'); pouvaient etre remplacés par 1 seul mysql_query('UPDATE table1, table, SET table1.colonne=0 , table2.colonne=53');)

J'ai entendu parlé des jointure (externe, naturelle etc etc)...Mais aucun des tuto ne m'a vraiment éclairé sur l'utilité et le fonctionnement de ces jointures (j'ai fais un tours sur developpez.com et nexen)

Quelqu'un aurait-il les compétences nécessaire en la matière pour m'expliquer a quoi ça sert, ce que ça fait et comment ça marche?

Merci d'avance de votre attention ;)

Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.

Bha écoute j'ai bouffé du SQL pendant 2 ans à l'IUT, donc je me permets de te répondre.....


Une jointure sert à joindre deux table en fait ( mouai génial mon explication ...) Bon je vais essayer de te trouver des exemples :

Alors voila par exemple tu as deux tables : commune (id , nom , nb_habitants , etc ..... )
une autre table personne(id,id_commune,nom,prenom,age,sexe,etc....)


ET que tu veuilles afficher les personnes, et le nombre d'habitants ou le nom de la commune correspondant à ces personnes : bha tu fais une union des tables :

SELECT * FROM personne INNER JOIN commune ON commune.id = personne.id_commune

voila en fait cette requete va regrouper la table commune et personne en une même requete.

Apres tu as différente manière d'unir deux table ou plusieurs tables.

NATURAL JOIN :

Dans l'exemple ci dessus si dans la table commune je renomme mon champs id en id_commune ; la requete sql devient : SELECT * FROM personne NATURAL JOIN commune

Voila comme tu peux le voir le SQGBD est intelligent et quand tu ne précises pas les champs sur lesquels joindre les table bha il regarde ceux qui ont le même nom et il fait la jointure sur ces champs....


Voila si tu veux plus de précision dit moi le j'essairais de retrouver mes cours et je te les enverai (enfin si je les retrouves....)

Répondre à Kymic@IDN

Ok merci beaucoup de ta réponse rapide...
Le temps de finir un petit truc sur le forum et je test tout ça ^^

Répondre à Nisnor

Parfait nickel chrome...Tes explication+le site de laltruiste+mes tests m'ont beaucoups servi et je sais plus ou moin sutilier tous les type de jointures

@++

Répondre à Nisnor
Tom's Guide > Forum > Programmation > [résolu]Explication sur les jointures en SQL
Aller à :

Il y a 525 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens