IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Problème avec jointures


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40

    Informations professionnelles :
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juillet 2008
    Messages : 11
    Par défaut Problème avec jointures
    Bonjour à tous,

    Voici mes tables:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
     
    --
    -- Base de données: `scmoreuil`
    --
     
    -- --------------------------------------------------------
     
    --
    -- Structure de la table `matchs`
    --
     
    CREATE TABLE IF NOT EXISTS `matchs` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `id_correspondance` int(11) NOT NULL,
      `id_equipe1` int(11) NOT NULL,
      `id_equipe2` int(11) NOT NULL,
      `score` varchar(100) NOT NULL,
      `semaine` varchar(2) NOT NULL,
      `jour` varchar(1) NOT NULL,
      `date` bigint(20) NOT NULL,
      PRIMARY KEY (`id`),
      UNIQUE KEY `id` (`id`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;
     
    --
    -- Contenu de la table `matchs`
    --
     
    INSERT INTO `matchs` (`id`, `id_correspondance`, `id_equipe1`, `id_equipe2`, `score`, `semaine`, `jour`, `date`) VALUES
    (1, 1, 1, 1, '0 - 0', '11', '7', 1300616157);
     
    -- --------------------------------------------------------
     
    --
    -- Structure de la table `matchs_correspondance`
    --
     
    CREATE TABLE IF NOT EXISTS `matchs_correspondance` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `nom` varchar(100) NOT NULL,
      PRIMARY KEY (`id`),
      UNIQUE KEY `id` (`id`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;
     
    --
    -- Contenu de la table `matchs_correspondance`
    --
     
    INSERT INTO `matchs_correspondance` (`id`, `nom`) VALUES
    (1, 'Seniors A');
     
    -- --------------------------------------------------------
     
    --
    -- Structure de la table `matchs_equipe`
    --
     
    CREATE TABLE IF NOT EXISTS `matchs_equipe` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `nom` varchar(100) NOT NULL,
      PRIMARY KEY (`id`),
      UNIQUE KEY `id` (`id`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;
     
    --
    -- Contenu de la table `matchs_equipe`
    --
     
    INSERT INTO `matchs_equipe` (`id`, `nom`) VALUES
    (1, 'SC Moreuil'),
    (2, 'Amiens SC');
    Ce que je voudrais c'est afficher ceci:

    "
    Seniors A
    SC Moreuil 0 - 0 Amiens SC
    "

    On a besoin de jointure mais je ne sais pas comment faire.

    pouvez-vous m'aider?

    merci

  2. #2
    Membre averti
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 19
    Par défaut
    Salut

    En admettant que ta base de données soient en MySQL, la solution que je te propose doit être correcte :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT e.nom | " " | m.score | " " | p.nom FROM match m LEFT JOIN match_equipe e ON m.id_equipe1 = e.id, match_equipe p ON m.id_equipe2 = p.id;
    Bon j'ai pas testé, y a peu être des erreurs, mais normalement ça doit être quelque chose du genre

  3. #3
    Membre averti
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40

    Informations professionnelles :
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juillet 2008
    Messages : 11
    Par défaut
    Merci pour ta solution.

    Je vais la tester mais à quoi sert les | " " |?

    Merci

  4. #4
    Membre averti
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 19
    Par défaut
    Les pipes ( | ) permette de concaténer le tout ensemble.

    En gros :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    e.nom | " " | m.score | " " | p.nom
    Retournera le nom de la première équipe + un espace + le score + un espace + le nom de la seconde équipe

  5. #5
    Membre averti
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40

    Informations professionnelles :
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juillet 2008
    Messages : 11
    Par défaut
    Je ne comprends pas ton code.

    peux tu me faire un exemple?

  6. #6
    Membre averti
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 19
    Par défaut
    Tu as testé ma requête ?
    Si jamais elle fonctionne, je pense que ça sera un bon exemple

Discussions similaires

  1. problème avec jointure dans ma requette
    Par sinifer dans le forum Requêtes
    Réponses: 2
    Dernier message: 06/07/2009, 16h48
  2. Problème avec jointures multiples.
    Par Veritas5 dans le forum Développement
    Réponses: 3
    Dernier message: 05/06/2009, 15h42
  3. Problème avec jointure externe
    Par illight dans le forum Langage SQL
    Réponses: 1
    Dernier message: 09/04/2008, 12h23
  4. [SQL]Problème avec jointure de tables
    Par benjisan dans le forum Requêtes et SQL.
    Réponses: 16
    Dernier message: 29/03/2007, 20h43
  5. Problème avec jointure
    Par chips_84 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 29/06/2006, 15h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo