Formation par Olivier Duffez

Formation au référencement par Olivier Duffez, créateur de WebRankInfo !
Une formule efficace alliant théorie et pratique, avec une haute disponibilité des intervenants
Cette formule a déjà convaincu plusieurs centaines d'entreprises, pourquoi pas vous ?
Réservez vite votre place en ligne (convention possible pour imputer sur le budget formation)

Formation référencement Marseille

problème de jointure mysql : je m'en sors pas !!

Poster un nouveau sujet Imprimer cette discussion    Forum -> Développement d'un site Web   Les dernières discussions de ce forum sont disponibles au format RSS
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
 
pppplus
Nouveau WRInaute

Inscrit le: 30 Oct 2006
Messages: 10

URL permanente de ce messagePosté le : Lun Aoû 27, 2007 17:18    Sujet du message: problème de jointure mysql : je m'en sors pas !!

Je n'arrive pas à faire une requête avec une jointure, si quelqu'un peut m'aider... Car même en lisant tous les exemples sur le net, je ne m'en sors pas... Shocked

Alors mes tables !

table1 =>cpa_cp_id, cpa_sitediff, actif
table2 =>visu_id_camp, visu_id (clé unique) + tous les autres champs
table3 =>cpa_cp_id (clé unique)

donc dans mes tables, les champs
table1.cpa_cp_id = table2.visu_id_camp = table3.cpa_cp_id


Je cherche à récupérer toutes les valeurs de la table 2, en vérifiant les choses suivantes :
- que le champ table2.visu_id = $id
- que le champ table1.cpa_sitediff = $diff existe, avec cpa_cp_id = visu_id de table2 et statut actif (=1 dans table1)

Donc pour l'instant, j'ai fait (j'ai pas mis * mais chaque champ !):

Code:

SELECT * FROM table2
LEFT JOIN table
ON table3.cpa_cp_id=table2.visu_id
WHERE visu_id='$id'


Mais je n'arrive pas à comprendre comment ajouter le reste (en espérant que mon début soit déjà bon...
Et j'espère que mon explication est à peu près compréhensible.. Wink

Merci d'avance pour votre aide Exclamation
 
pppplus
BigBook_
Nouveau WRInaute

Inscrit le: 28 Aoû 2007
Messages: 9

URL permanente de ce messagePosté le : Mar Aoû 28, 2007 12:26    Sujet du message: problème de jointure mysql : je m'en sors pas !!

Et sans LEFT JOIN? Je sais que c'est moins propre, mais est-ce que ceci marche :

Code:
SELECT * FROM table1, table2, table3
WHERE table1.cpa_cp_id = table2.visu_id_camp
AND table2.visu_id_camp = table3.cpa_cp_id
AND table1.cpa_sitediff IS NOT NULL
AND table2.visu_id = '.$id.'
AND table1.cpa_sitediff = '.$diff.'
AND table1.actif = 1


EDIT : Pardon, j'ai lu un peu vite. Donc ce que tu as fonctionne, et c'est le reste des conditions qui te manquent?
 
BigBook_
arnaudmn
WRInaute accro
WRInaute accro

Inscrit le: 11 Mai 2005
Messages: 1337

URL permanente de ce messagePosté le : Mar Aoû 28, 2007 12:40    Sujet du message: Re: problème de jointure mysql : je m'en sors pas !!

[quote="pppplus"]
Je cherche à récupérer toutes les valeurs de la table 2, en vérifiant les choses suivantes :
- que le champ table2.visu_id = $id
- que le champ table1.cpa_sitediff = $diff existe, avec cpa_cp_id = visu_id de table2 et statut actif (=1 dans table1)

Code:

SELECT * FROM table2
LEFT JOIN table
ON table3.cpa_cp_id=table2.visu_id
WHERE visu_id='$id'


Déja, y'a un problème : tu peux pas mettre table3 dans le ON si la table n'est pas dans la jointure Smile

SELECT table2.*
from table2 inner join table1 on table1.cpa_cp_id = table2.visu_id_camp
where table2.visu_id=$id
and table1.cpa_sitediff = $diff
and table1.actif=1

Y'a pas besoin de jointure gauche si tu veux des lignes qui existent dans les 2 tables.
 
arnaudmn Visiter le site web du posteur
pppplus
Nouveau WRInaute

Inscrit le: 30 Oct 2006
Messages: 10

URL permanente de ce messagePosté le : Mar Aoû 28, 2007 13:32    Sujet du message: Re: problème de jointure mysql : je m'en sors pas !!

arnaudmn a écrit:


Déja, y'a un problème : tu peux pas mettre table3 dans le ON si la table n'est pas dans la jointure Smile



Oui erreur de frappe, c'était bien table3 !
Bon en me relisant en effet, je n'ai pas besoin de faire référence à cette table3 ! Et c'est bien plus simple avec 2 tables à lier, que 3...

Bon je relis vos propositions, je teste et je vous tiens au courant !

En tout cas merci !
 
pppplus
pppplus
Nouveau WRInaute

Inscrit le: 30 Oct 2006
Messages: 10

URL permanente de ce messagePosté le : Mar Aoû 28, 2007 14:40    Sujet du message: problème de jointure mysql : je m'en sors pas !!

Merci Arnaud, c'est apparemment parfait ta méthode !

Je me suis un peu perdu hier avec ma 3ème table... qui ne sert à rien !

J'ai encore du mal avec mes jointures...

BigBook, ça marche pas pour la tienne... mais merci tout de même !
 
pppplus
 
Montrer les messages depuis:   
Revenir en haut    Forum -> Développement d'un site Web Toutes les heures sont au format GMT + 2 Heures
Page 1 sur 1 - 
Connexion
Nom d'utilisateur:    Mot de passe:      Se connecter automatiquement à chaque visite    

Définitions :

CLIQUEZ ICI pour vous inscrire à WebRankInfo (forum, annuaire, outils...)

Connexion

© 2001-2005 phpBB Group, support français
Personnalisation : WebRankInfo ™


 ODP  Firefox  Alsacreations  annuaire webmaster Yagoort