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 :

Requête avec 2 colonnes de même nom dans 2 tables [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Invité
    Invité(e)
    Par défaut Requête avec 2 colonnes de même nom dans 2 tables
    Bonjour,

    Voici la requête sql dans ma page php (elle fonctionne correctement)
    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
      mysql_set_charset('utf8', $conn);
     
      $query = "SELECT `ID`, `ID_type`, `Name` FROM table_1";
      $result = mysql_query($query) or die('Error, query failed. ' . mysql_error());
      while($row = mysql_fetch_array($result))
      {
        echo "Type: ".$row['ID_type']."<br />Name: ".$row['Name']."<br />";
      }
     
      $query = "SELECT table_2.`ID`, table_2.`coord`, table_3.`Name`
      FROM table_2, table_3
      WHERE table_2.`ID` = 16
      AND table_2.`carte` = table_3.`ID`;";
      $result = mysql_query($query) or die('Error, query failed. ' . mysql_error());
      while($row = mysql_fetch_array($result))
      {
        echo "<br />Monster ".$row['ID']." exist in ".$row['coord']." ".$row['Name'];
      }
    1) J'ai essayé d'afficher en plus la colonne ID de la table_3 dans la 2ème partie mais sans succès. Comme j'aurais à le faire plus tard, autant chercher de suite comment le faire.

    2) Si vous voyez des choses à améliorer dans le code que j'ai mis, je suis preneur. Je connais plus les requêtes sql avec une base oracle que celle pour mysql.

    3) Auriez-vous un lien permettant de connaître les différences de langage entre les deux? Pour le moment, j'ai vu que number était à éviter avec mysql

    Merci d'avance.

  2. #2
    Membre expérimenté
    Homme Profil pro
    Développeur C++
    Inscrit en
    Avril 2012
    Messages
    771
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2012
    Messages : 771
    Points : 1 631
    Points
    1 631
    Par défaut
    Bonjour,

    si dans la table 3 la colonne s'appel aussi ID il faut alors que tu donne des alias aux colonnes ID de la table 2 et 3 dans la requête,

    par exemple :
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT table_2.ID idTable2, table_2.coord, table_3.Name, table_3.ID idTable3
    FROM table_2, table_3
    WHERE table_2.ID = 16 AND table_2.carte = table_3.ID

    De plus dans ton code évite d'utiliser l'API mysql_ qui est obsolète et serra prochainement supprimer des version de PHP, utilise plutôt les API mysqli_ ou PDO.

  3. #3
    Invité
    Invité(e)
    Par défaut
    Effectivement, en utilisant un alias différent, je peux utiliser la bonne colonne via mon $row.

    Et comme tu me le conseilles, je vais changer d'API.

    Merci pour tout

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 27/06/2012, 21h40
  2. Travailler avec 2 classes du même nom
    Par ronio dans le forum Bibliothèques et frameworks
    Réponses: 5
    Dernier message: 31/12/2007, 12h11
  3. Requêtes avec liaison sur la même table
    Par jessenco dans le forum Requêtes
    Réponses: 10
    Dernier message: 15/01/2007, 02h10
  4. Copier colonnes suivant leur nom dans une autre feuille
    Par paflolo dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 18/10/2006, 15h49
  5. [C#]Insérer le même nom dans deux treeview
    Par fafa139 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 26/04/2006, 20h58

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