jointure complète/externe : comment l'utiliser ? - SQL/NoSQL - Programmation
Marsh Posté le 22-09-2012 à 13:06:52
En T-SQL (SQL serveur) :
ya 4 type de jointure a gauche (left outer join), a droite (right outer join), complete (inner join) et incomplete (cross join)
gauche et droite c'est pareil il suffit de change l'ordre des tables
dans ton cas tu dois faire pour chaque etudiant et même ceux qui n'ont pas fait d'emprunt
donc un select idEtu from etudiant left outer join
pour avoir tout tes etudiants
Marsh Posté le 22-09-2012 à 15:15:20
boomy29 a écrit : En T-SQL (SQL serveur) : |
Le truc c'est que j'ai réussi a faire ma commande pour ceux qui ont fait des emprunts mais pas pour les autres : j'arrive pas a l'incorporer dans mon join truc...
Code :
|
Marsh Posté le 22-09-2012 à 15:54:06
un autre syntaxe pour ta requete pour mieux voir la jointure normalement tu as le même resultat avec cette requete qu'avec ta requete
test ça normalement tu vois moragne maintenant
select etudiant.nom as etu, count(emprunter.idetu) as emp
from etudiant left outer join emprunter on etudiant.idetu=emprunter.idetu
group by etudiant.nom
Marsh Posté le 22-09-2012 à 16:09:34
boomy29 a écrit : un autre syntaxe pour ta requete pour mieux voir la jointure normalement tu as le même resultat avec cette requete qu'avec ta requete
|
Yep ça marche
et donc ça c'est une jointure complète ou externe ?
Marsh Posté le 22-09-2012 à 16:17:18
inner join c'est une jointure complète
après il y a externe a gauche droite ou sans rien
sans rien c'est le cross join déconseillé car elle prend beaucoup de ressource ça te sort toute les lignes étudiant, tous les emprunts et le jointure des 2
et donc je te conseille ma syntaxe pour les jointures c'est plus visible
Marsh Posté le 22-09-2012 à 16:43:57
ok merci.. c'est encore un peu flou mais je vais travailler dessus
Marsh Posté le 22-09-2012 à 17:06:18
de rien bonne chance je sais en 1ere année d'IUT c'est pas mal abstrait mais une fois que tu mets en application les connaissances tu vois l’intérêt
Marsh Posté le 22-09-2012 à 17:19:23
boomy29 a écrit : MAJ ton profil alors ^^ |
oui je vais le faire ^^
Marsh Posté le 22-09-2012 à 11:55:12
Bonjour à tous !
alors voila, j'ai un TP à faire et une question me prend la tête depuis 3 jours : elle concerne les "jointures complètes et externes" mais je ne sais pas du tout comment m'en servir
Pour vous expliquer brièvement je dois faire une requête pour afficher le nombre d'emprunts (à la bibliothèque de mon iut) de chaque étudiant.
donc moi je comptais le nombre d’occurrence de chaque IDetudiant dans ma table emprunter.
MAIS une certaine "Morgane" a fait 0 emprunt donc elle n'apparait pas dans la table emprunter et c'est la qu’apparemment il faut utiliser une jointure mais je vois pas du tout comment m'en servir :s
je vous mets un diagramme de classe que j'ai fais pour que ça soit plus clair :
si vous pouviez me donner un petit coup de pousse j'aimerais vraiment comprendre cette histoire de jointure