Bonjour,
voici présenté mon schema:
Table projet : id, name
Table role_has_projet: id, project_id, user_role_id
Table user_role : id, user_id, role_id
Table user : id, name
Table role : id
Je voudrais obtenir une seule ligne avec ma requête comme suit:
- Ligne en sortie: project.id, c, d
Voici ma requête MySQL:
Est-ce que cela est possible ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 SELECT t2.name AS c , t4.name AS d FROM projet LEFT JOIN role_has_projet AS t0 ON t0.project_id = project.id LEFT JOIN user_role AS t1 ON t1.id = t0.user_role_id AND t1.role_id = 2 (par exemple) LEFT JOIN users AS t2 ON t2.id = t1.user_id LEFT JOIN user_role AS t3 ON t3.id = t0.user_role_id AND t3.role_id = 4 (par exemple) LEFT JOIN users AS t4 ON t4.id = t3.user_id WHERE project.id = 14
Si oui, quelle est la bonne requête parce que la mienne ne marche pas comme je le veux.
Elle me donne plusieurs lignes avec des null:
t0.id, c, NULL
t0.id, NULL, d
Merci.
Partager