Probleme de jointure

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Probleme de jointure

Re: Probleme de jointure

par sam_le_zero » 15 déc. 2012, 15:09

Ben je suis allez dans structure et j'ai ajouter une colonne ID_proprietaire dans la table jeux_video.

"C'est a ce moment qu'il faut que tu indique le propriétaire (l'id proprio)"

Je ne comprend pas, je dois moi même remplacer les 0 de la colonne ID_proprietaire par les valeurs que je veux (en l'occurence les ID de la table proprietaires) ?

Je vous montre ci dessous la structure de ma table jeux_video :
structure jeux_video.jpg

Désolé, je suis un gros noob en PHP/mysql ! Donc pardonnez moi si je suis un peu lent à la détente !

C'est quoi les creates table ? :oops:

Re: Probleme de jointure

par moogli » 14 déc. 2012, 20:42

Comment fait tu l'insertion dans la table jeux vidéo ?
C'est a ce moment qu'il faut que tu indique le propriétaire (l'id proprio)

As tu un clef étrangère de définie !
Fait voir les create table des tables.

@+

Re: Probleme de jointure

par sam_le_zero » 14 déc. 2012, 19:59

Salut merci de me répondre !

En fait ce que j'aimerais c'est que les ID_proprietaire (qui est dans ma table "jeux_video"), corresponde aux ID de ma table "proprietaires" !

Or comme tu vois, je n'ai que des 0 dans ma colonne ID_proprietaire.

Re: Probleme de jointure

par moogli » 14 déc. 2012, 19:29

Salut,

Peux tu poster directement les create table ?

Côté code ta requête est faite à l'envers c'est la table jeux_video qui a une clef étrangère donc tu peux faire un select sur cette table et lui joindre la table propriétaire.

Par exemple select * from jeux_video join proprietaires on id_proprietaire = proprietaire.id

Si tu veux les jeux d'une personne un simple select sur jeux_video avec un where sur l'id propriétaire.

Attention si l'id propriétaire peux être vide (ou ne pas correspondre a un propriétaire il faut un left join (dans le cas de la requêtes que j'ai mis au dessus ).

@+

Re: Probleme de jointure

par sam_le_zero » 14 déc. 2012, 18:57

Et la table proprietaires
proprietaire.jpg
Je précise que ces tables sont facultatif, je veux dire, c'est pour m'entrainer et pas pour un vrai site !

Re: Probleme de jointure

par sam_le_zero » 14 déc. 2012, 18:55

Pour le ID_proprietaire j'ai mis INT.

Pour les données de ma table jeux video, j'ai

ID, nom, ID_proprietaire, possesseur, console, prix, nbre_joueurs_max, commentaires.
1, Mario, 0 , Florent , NES , 4 , 1
etc
etc

Dans la table proprietaire j'ai

ID, prenom, nom
1 , Corentin, Dupres
etc
etc

je vous met des screens de mes 2 tables :

Re: Probleme de jointure

par piotrowski-s » 14 déc. 2012, 18:23

alors tu as mis quoi comme type de champs ? pour le ID_proprietaire ?

et au niveau de tes données tu peux nous montrer une ligne de chaque table stp ?

Probleme de jointure

par sam_le_zero » 14 déc. 2012, 18:08

Bonjour a tous !

Voila mon problème !

J'ai deux table : "jeux_video" et "proprietaires".

Dans la table jeux_video j'ai créée un colonne ID_proprietaire qui doit afficher l'ID de la table proprietaires.

Lorsque je crée cette colonne ID_proprietaire, je n'ai que des 0 qui s'affichent en valeur !

Et lorsque je tape la requete suivante sur l'onglet sql :


SELECT j.nom nom_jeu, p.prenom prenom_proprietaire
FROM proprietaires p
INNER JOIN jeux_video j
ON j.ID_proprietaire = p.ID

ca m'indique : "MySQL a retourné un résultat vide (aucune ligne). ( Traitement en 0.0004 sec )"

Je remerci d'avance tout ceux qui m'aideront !