Problème SQL Jointure

Résolu/Fermé
ched64 Messages postés 52 Date d'inscription lundi 1 avril 2013 Statut Membre Dernière intervention 9 mai 2016 - 6 avril 2014 à 21:22
ched64 Messages postés 52 Date d'inscription lundi 1 avril 2013 Statut Membre Dernière intervention 9 mai 2016 - 6 avril 2014 à 22:55
Bonjour,

Je cherche a réaliser l'opération suivante à l'aide de My SQL.

Obtenir le nom du (ou des) acteur(s) qui a (ont) joué dans « BB».


Films (idFilm, Titre, Annee)
(1, BB, 1900)
(2, CC, 1959)

Jouer (idActeur, idFilm)
(1,1)
(2,2)

Acteurs (idActeur, nom, prénom)
(1, ABCD, Paul)
(2, EFGH, Pierre)


Je pense qu'il faut utiliser une jointure mais je n'y arrive pas, si quelqu'un pouvais m'aider.
En vous remerciant :)
A voir également:

4 réponses

Bob201477 Messages postés 8 Date d'inscription samedi 8 février 2014 Statut Membre Dernière intervention 6 avril 2014 3
6 avril 2014 à 22:19
Hello,

Tu peux suivre ce cours sur les jointures : https://www.vulgarisation-informatique.com/mysql-select.php

La requête serait la suivante :

SELECT a.nom, a.prenom FROM Jouer j LEFT JOIN Acteurs a ON j.idActeur=a.idActeur WHERE j.idFilm=1

Ca, c'est si tu connais d'avance l'identifiant du film.
1
ched64 Messages postés 52 Date d'inscription lundi 1 avril 2013 Statut Membre Dernière intervention 9 mai 2016
6 avril 2014 à 22:36
Bonjour,

Merci pour votre réponse cela fonctionne trés bien.

Petite question concernant le code, a quoi correspondent les "a.", "j." (Acteurs, Jouer ?)
0
Bob201477 Messages postés 8 Date d'inscription samedi 8 février 2014 Statut Membre Dernière intervention 6 avril 2014 3
6 avril 2014 à 22:40
En fait ce sont ce qu'on appelle des alias. Les alias te permettent d'utiliser une notation de ton choix pour dire que tu souhaites les champs de la table Acteurs ou de la table Jouer,

J'aurais très bien pu mettre x et y comme alias ;)
0
ched64 Messages postés 52 Date d'inscription lundi 1 avril 2013 Statut Membre Dernière intervention 9 mai 2016
Modifié par ched64 le 6/04/2014 à 22:57
Okok merci du renseignements, ce qui veut dire que pour une autre question j'ai ça :

o Obtenez la liste des titres des films qui ont été réalisés par CCC ;
Realisateurs (idRealisateur, Nom, Prénom)
(1,AAA,BBB)
(2,CCC,DDD)

Films (idFilm, Titre, Annee)
(1, X1, 1950)
(2, X2, 1960)
(3, X3, 1970)
(4, X4, 1980)

Realiser (idRealisateur, idFilm)
(1,2)
(2,4)


Le résultat est le suivant ?
SELECT j.Titre
FROM Realiser j
LEFT JOIN Realisateurs r ON j.idRealisateur=r.idRealisateur WHERE j.nom=AAA
0