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

Requêtes MySQL Discussion :

Requête SQL sur table jointes


Sujet :

Requêtes MySQL

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 107
    Points : 55
    Points
    55
    Par défaut Requête SQL sur table jointes
    Bonsoir,

    J'ai une pratique du langage SQL un peu bourrin. J'explique.

    On considère 2 tables, une listant les livres d'une bibliothèque avec comme champs le numéro ISBN et le code l'auteur, et une seconde table qui liste le nom des auteurs avec leur code associé. IL y a une "jointure" (jointure a définir précisément, mais on ne prend pas en compte les ouvrages écrits par plusieurs auteur en même temps, c'est un autre problème).

    Lorsque je veux une liste des ouvrages enregistré dans la base de donnée, je fait une première requête SQL pour avoir la liste. Par exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT * FROM table_livre;
    J'obtiens une liste de tous les livres avec comme champ, notamment, le code de l'auteur. Mais si je liste de cette façon, j'obtiens une liste de code pour les auteurs. Je fais alors une succession de "n" autres requêtes SQL (autant de requête que de livre) pour savoir quel est le libellé de l'auteur correspondant a chaque code auteur dans ma liste de livre.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT * FROM table_auteur WHERE code_auteur=code_auteur_cherché;
    Et j'affiche donc une liste de livre avec les auteurs "en lettre" (par opposition en code). Mais a quel prix ! Existe t-il une autre méthode en ne faisant qu'une seule et unique requête SQL ?

    Merci.

    J.

  2. #2
    jnore
    Invité(e)
    Par défaut
    Bonjour

    Essaie ceci, à toi d'aménager en fonction de tes champs:
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    SELECT table_livre.* , table_auteur.*
    FROM table_livre
    JOIN table_auteur 
    ON (table_livre.code_auteur = table_auteur.code_auteur);

Discussions similaires

  1. [RegEx] Requête SQL sur tables non connues à l'avance (regex)
    Par lothar59 dans le forum Langage
    Réponses: 2
    Dernier message: 27/02/2007, 10h33
  2. problème de requête SQL sur 3 tables pour un while
    Par carmen256 dans le forum Requêtes
    Réponses: 3
    Dernier message: 13/04/2006, 16h55
  3. requêtes sql sur plusieurs tables
    Par zahiton dans le forum Langage SQL
    Réponses: 4
    Dernier message: 25/11/2005, 10h59
  4. [SQL] requêtes SQL sur plusieurs tables
    Par zahiton dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 24/11/2005, 16h32
  5. A propos d'une requête SQL sur plusieurs tables...
    Par ylebihan dans le forum Langage SQL
    Réponses: 2
    Dernier message: 14/09/2003, 16h26

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