begin process at 2012 05 30 22:06:06
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Base de données

 > 

MySQL

 > 

Jointure


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Jointure

lundi 9 février 2009 à 16:33:17 | Jointure

Teddy_le_gnein

Hello tous le monde.
Voilà mon problème.
J'ai une requête à faire, je suis persuadé que ça ne dois pas être si insurmontable que ça, mais voilà je nage depuis un moment!

je pense que ma solution est une jointure mais je n'en ai jamais fait!
J'ai compris le principe, mais quelque chose doit encore m'échapper.

voilà la structure:
2 tables avec un 'id' en clé primaire, et d'autres champs d'infos

Il faut savoir que des champs 'id' identiques peuvent être dans les deux tables, ou n'etre que dans la 1ere.
exemple, l'id 10 est dans la 1ere table uniquement alors que l'id 20 est dans les deux tables.

Je souhaiterai obtenir la query qui dit : " afficher champs info x de la table 2 pour toutes les id que l'on retrouve dans les deux tables."

j'ai essayer un truc dans le genre

mysql_query('SELECT id,nom,statut
            FROM table1 INNER JOIN table2 ON table1.id=table2.id           
            WHERE id IN (SELECT id FROM table1) ORDER BY id')
            or exit(mysql_error());

j'ai un message : Column 'id' in field list is ambiguous
Je veux bien comprendre qu'il ne sache pas sur quel pied danser mais mois je sais sur lequel je veux qu'il le fasse...
Pourqoi ne comprent-il pas ce que je veux? : "qu'il m'affiche les infos statut de la table 1 et les infos nom de la table 2 pour toutes les lignes correspondantes au meme id ."

Notta : la requete suivante fonctionne et me donne l'id et le statut
SELECT id,statut FROM table1 WHERE id IN (SELECT id FROM table2) ORDER BY id
mais dès que je cherche à obtenir l'info nom de la table2 je me retrouve bloqué.

J'espère etre assez clair!
une idée?
En vous remerciant!
lundi 9 février 2009 à 16:55:02 | Re : Jointure

jeremyCLIGRAPHCRM

Réponse acceptée !
Bonjour,

Column 'id' in field list is ambiguous
:
En fait vu que tu as un champ "id" dans tes deux tables mysql  ne sait pas quel identifiant afficher.
Il faut que tu lui précise en préfixant le champ par le nom de la table comme ceci :
table.champ

 Pour toi ce seradonc table1.id

_______________________
Jérémy, Membre du projet open source Cligraphcrm.
lundi 9 février 2009 à 17:03:22 | Re : Jointure

jeremyCLIGRAPHCRM

Réponse acceptée !
Ps : Pour ta requête elle peut être plus simple :

SELECT table1.id,nom,statut
            FROM table1,table2           
            WHEREtable1.id=table2.id
            ORDER BY table1.id

Le texte en gras est la jointure entre tes deux tables.
Avec ce type de jointure seuls les enregistrements qui auront l'identifiant dans les deux tables seront retournés.

Je t'invite à voir des tutoriaux sur le net, par exemple :
http://sqlpro.developpez.com/cours/sqlaz/jointures/#L2.4

_______________________
Jérémy, Membre du projet open source Cligraphcrm.
lundi 9 février 2009 à 17:34:04 | Re : Jointure

Teddy_le_gnein

Réponse acceptée !
Merci beaucoup...
J'était en train d'essayer la deuxième méthode que tu m'as écrit (la simple)
J'avais finir par trouver ça sur le net, mais j'avais une erreur à cause du order...
Je n'avais pas mis la table.id, mais juste id...

donc merci beaucoup à toi et à ta réactivité.
je vais pouvoir avancer...


Cette discussion est classée dans : table, id, from, tables, table1


Répondre à ce message

Sujets en rapport avec ce message

Sélectionner les lignes différentes entre deux tables [ par Mikemadest ] Bonjour,J'ai cherché sans trouver de réponse à mon problème,ce qui m'amène à vous poser cette question !D'avance je m'excuse si j'ai raté la solution MySQL DELETE [ par Mamax ] Salut a tous!!!Est ce que quelqu'un pourrait m'indiquer la syntax de la clause WHERE pour pouvoir supprimer plusieurs éléments en même temps.J'ai essa relation entre 2 tables [ par rastagnol ] slt !!!voila G un pb pour mettre 2 tables en relations ... je ne sais pas trop comment m'y prendre. G une table commandes avec un champ client_id et u Affichage de doublons dans une recherche sur deux tables [ par rafou77 ] Bonjour,c'est encore moi le newbizzzVoilà mon probleme, je fais une recherche sur deux tables (credits (id,nom,prenom,ect..) ) et (credits5 ( id,id_cl Generation automatique d'une table [ par faty86 ] Bonjour,Actuellement je travaille sur une application utilisant PHP & MySQL, j'ai un problème que voici:Dans ma base de données j'ai les tables: Equip Jointure entre deux tables [ par Krasha ] Salut, Sur ma base de données j'ai deux tables distinctes qui devraient avoir une "liaison" entre elles. (les deux tables ci-dessous ne sont que des Requête introuvable ... [ par cdie ] Chers amis développeurs, bonjour, Je vous écris car je travaille actuellement sur un site pour un projet et j'avoue que je ne trouve pas une requête. Corrélation entre différente table [ par Rouk ] Bonjour, Je souhaiterai optimiser mon code, il fonctionne actuellement mais je sais qu'il n'est pas correct. En effet, je n'utilise pas de clé second SELECTION DU N° DE L'ID EN CLIQUANT SUR UN LIEN [ par escabot ] Bonsoir, Je cherche desespérement la bonne syntaxe qui permettrait de sélectionner les coordonnées (stockées dans la bdd phpmyadmin) correspondant à Ou est le probleme ? [ par remitete ] Bonjour ! j'ai dans une Bdd une base du nom de sharkemu une table du nom : news et 3 champs "id" ( int(11) auto increment ) "Titre" (varchar(50) ) "Me


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,515 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales