..
Bonjour,
Vous feriez bien de faire un tour sur le forum de modélisation.centre_interet (grande table qui contient TOUT : tous les films, tous les acteurs, et plein d'autres données)
id
t (type de centre d'intéret : film OU acteur OU autre chose)
fk_id ( l'id en relation : film.id si t =film OU acteur.id si t = acteur)
Pour votre 2eme requête, j'en déduis que membre'Id est une colonne de la table mot_cle.
Si vous mettre une condition dans la clause where d'une colonne appartenant à une table jointe en externe alors la jointure devient une jointure interne.
Il faut remonter cette conditions dans la clause de jointure.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 left outer join ma_table b on b.ma_cond = 'XX' and b.ma_jointure = a.ma_jointure
c'est parfait ça a l'air de fonctionner, je vais tester quelques minutes
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 SELECT film.id, film.nom, centre_interet.id AS 'centre_interetId', mot_cle.id AS 'mot_cleId' FROM acteur_film INNER JOIN film ON filmId = film.id INNER JOIN centre_interet ON centre_interet.fk_id = film.id LEFT JOIN mot_cle ON mot_cle.centre_interetId = centre_interet.id AND mot_cle.membreId = 20 WHERE t='film' AND acteurId = 35
je ne connaissais pas ce AND sur un left join
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager