begin process at 2012 05 31 11:24:37
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive PHP

 > 

Archives

 > 

Bases de données

 > 

triple jointure JOIN LEFT SQL


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

triple jointure JOIN LEFT SQL

samedi 20 août 2005 à 12:05:30 | triple jointure JOIN LEFT SQL

coucou747

Administrateur CodeS-SourceS
Salut,

Pour un projet, j'aimerais faire une triple jointure :
j'ai fait une table mysql pour des contacts, une table qui contient des groupes, une table qui contient les maisons, une autre qui contient des dates, une qui contient des mails, une autre pour les tels...

C'est pour un gestionaire de contacts, ça doit permetre d'avoir plusieurs numérots de telephones, plusieurs adresses, plusieurs adresses mails... On doit ainsi pouvoir reperer ensuite les colocataires facilement... J'ai aussi prévu une tables dates importantes pour les aniversaires et les aniversaires de mariages...

Pour lister mes contacts, j'ai commencé par faire une requette silmple, mais elle ne pouvait afficher que le nom, le prénom, et l'id de leur groupe (et leur id aussi). J'ai ensuite tenté une jointure interne avec la table groupes, mais elle ne me convenais pas car elle n'affichait pas les personnes sans groupes...

J'ai donc choisit une jointure externe, j'ai alors réussi à placer les groupes. ayant aussi programmé les numérots de téléphones, j'ai alors fait une requette avec une triple jointure externe, mais ça n'a pas marché...

SELECT liste.id, liste.nom, liste.prenom, liste.sexe, groupes.nom as groupeName
    FROM groupes RIGHT JOIN liste ON groupes.id=liste.groupe

cete double jointure m'affiche corectement les contacts et leurs groupes...

SELECT liste.id, liste.nom, liste.prenom, liste.sexe, groupes.nom as groupeName, tel.type, tel.label, tel.tel
    FROM tel, groupes RIGHT JOIN liste ON groupes.id=liste.groupe AND tel.id_contact=liste.id

j'ai essayé de cette façon ma triple jointure, et ça ne m'affiche plus les contacts, cependant, elle affiche tout les tels pour tout le monde (comme si les on n'étaient pas pris pour le tel et qu'ils renvoyaient toujours false pour les groupes...)

ma table liste :
id                INT UNSIGNED AUTO_INCREMENT,
        groupe                INT UNSIGNED,
        nom                CHAR(30),
        prenom                CHAR(30),
        sexe                ENUM("feminin", "masculin"),

ma table groupes
        id                INT UNSIGNED AUTO_INCREMENT,
        nom                CHAR(30),
        description            CHAR(150),

et tel
        id                INT UNSIGNED AUTO_INCREMENT,
        id_contact            INT UNSIGNED,
        type                ENUM("portable","domicile","travail","autre"),
        label                CHAR(35),
        tel                CHAR(15),

merci d'avance

In a dream, I saw me, drop dead... U was here, U cried... It was just a deam, if I die, U won't cry, maybe, U'll be happy

[ Lien ]
samedi 20 août 2005 à 12:37:39 | Re : triple jointure JOIN LEFT SQL

coucou747

Administrateur CodeS-SourceS
Réponse acceptée !
SELECT liste.id, liste.nom, liste.prenom, liste.sexe, groupes.nom as groupeName, tel.type, tel.label, tel.tel
    FROM tel RIGHT JOIN groupes RIGHT JOIN liste ON groupes.id=liste.groupe ON tel.id_contact=liste.id

ça marche parfaitement, excusez moi du dérangement


In a dream, I saw me, drop dead... U was here, U cried... It was just a deam, if I die, U won't cry, maybe, U'll be happy

[ Lien ]


Cette discussion est classée dans : table, liste, id, groupes, jointure


Répondre à ce message

Sujets en rapport avec ce message

Probleme avec une methode recursive [ par lowkey ] Salut à tous !!Voici ma methode d'une classe que je suis en train de créer. Il y a un seul attribur : $liste, en private.[code]public function affiche Recuperer l'id de l'enregistrement de la liste dés que je sélectionne [ par marocmarocmaroc ] Bonjour, j'ai deux tables FAMILLE(id_famille,designation) et SOUS_FAMILLE(id_sous_famille,designation)  id_famille et la clé étrangère dans la table S Conseil structuration bdd [ par laubro ] Bonjourvoilà, je developpe un portail de reservation hotelière et comme souvent il va me falloir developper un moteur de recherche, j'en ai deja créé Update php d'une liste [ par sirgeese ] Bonjour à tous, J'ai une table que je souhaite mettre à jour régulièrement pour assurer un suivi quotidien de mes médias. Pour se faire, je doit créer Jointure [ par 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 create table innodb [ par fakoly77 ] bonjour,j'arrive pas à créer une table qui comporte une clé étrangère d'une première table.create table client (id_client VARCHAR(255) NOT NULL PRIMAR Probleme Ajax [ par mickael56100 ] bonjour je souhaiterais adapté une source du site à savoir celle ci : http://www.phpcs.com/codes/CHAINER-LISTES-DEROULANTES-AJAHT_39194.aspxJ'aimerais envoyer mail a plusieurs destinataires [ par michelo34 ] bonjour,tout d'abord merci a toutes les personnes qui contribue à l'alimentation du forum car pour un novice développeur les conseils qui y sont prodi liste roulante [ par tesnim1 ] Bonjour à tout le monde,je souhaite importer des données à partir d'une base des données suivant l'id du champ que je souhaite afficher,la sélection d modifier un champ [ par brudao ] Bonjour, je n'arrive pas à modifier le type d'un champ d'une bd mysql en php. exemple: je cree une table: $req="CREATE TABLE 'ma_table ( id int(11) no


Nos sponsors


Sondage...

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 : 9,812 sec (4)

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