Problème de jointure

exatropic -  
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,





Je tente une jointure de table entre 3 table. alors que dans d'autres projets tout se passait bien, ici, impossible d'arriver à quoi que ce soit.

J'espère que votre oeil externe y décèlera quelque chose que j'aurais manqué.

liste des tables :

table 1 (nom_cli
id_nom int 3
nom varchar 50

table 2 (tel_cli)
id_tel int 3
tel varchar 10

table 3 (liaison)
id int 3
id_nom int 3
id_tel int 3

requête :
SELECT n.nom,t.tel FROM 
nom_cli as n left join liaison as l
 on n.id_nom=l.idnom
right join tel_cli as t
on l.id_tel=t.id_tel


Je lance ma bouteille à la mer en espérant une réponse !!!!


EDIT : Ajout des balises de code

3 réponses

jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Bonjour,

Attention à bien respecter le nom de tes champs ... idnom n'est pas id_nom....

Sinon .. essayes ça :
SELECT *
FROM liaison L
LEFT JOIN nom_cli N ON N.id_nom = L.id_nom
LEFT JOIN tel_cli T ON T.id_tel = L.id_tel


NB: Penses à l'avenir de préciser sur quel SGBD tu travailles ... mysql .. sqlserveur, ORacle ........

NB²: Pense également à utiliser la coloration syntaxique pour pouster du code sur le forum.

0
exatropic
 
Merci pour ta réponse.

1. le résulta est identique : erreur "sans détail"
2. Je travail avec mysql via code php
3. désolé pour la couleur mais étant aveugle, je ne gère pas...

Cordialement.
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752 > exatropic
 
Peux-tu tester ta requête DIRECTEMENT dans ta BDD via phpmyadmin par exemple ?
0
exatropic
 
Cà fonctionne dans phpmyadmin via page sql.
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Donc si ça ne marche pas dans ton PHP .. c'est que le souci vient de ton code php et non de ta requête.....
Montre nous ton code PHP
0
exatropic
 
<?php

include "sql_connect.php";

--- contenu :

<?php

$link= mysqli_connect('xxxx', 'xxxx', 'xxxx', 'xxxx'))

?>

---- fin du fichier

$res = mysqli_connect($link,

"SELECT n.nom,t.tel FROM
nom_cli as n left join liaison as l
on n.id_nom=l.idnom
right join tel_cli as t
on l.id_tel=t.id_tel";

while ($row = mysqli_fetch_assoc($res)){
echo $row['nom'].' '.$row['tel'].'<br />';
} // fin du while
?>
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Le code de ta requête. .. n'est pas le même que celle que je t'ai donne...
0