Recuperer un champ d'un autre table

Malik -  
 A.Nonymous -
Bonjour,

Je souhaiterai recuperer la designation d'un article dans une table "Liste article"(2 champs: article et designation).
J'ai une table qui associe le client avec tout une liste d'article sans preciser la designation. Je voudrais recupere dans une table ou une requete les informations ci-dessous qui associe le client ses articles et la designation. Cette requete sera ensuite exporté vers excel

client / article1 / designation / article1 / designation / article1 / designation
A / P20 / table / P30 / chaise / P40 / lustre
B / P50 / bureau / P60 / armoire / P20 / table
C / P20 / table / P30 / chaise / P40 / lustre

Merci d'avance

4 réponses

  1. Soulitude Messages postés 26 Statut Membre 7
     
    Bonjour,

    Peux tu être précis et faire un schéma de tes tables.

    Sinon il me semble que c'est une simple jointure entre ta table liste article et client.
    0
  2. Maliksahli Messages postés 2 Statut Membre
     
    J'ai une 1ere table : Article

    Article désignation
    M01 toto
    M02 tata
    M03 titi
    M04 tutu

    J'ai une 2ème table : Nomenclature
    N°Nomenclature Article1 Article2 Article3
    N01 M01 M02 M03
    N02 M04 M01 M03
    N03 M02 M04 M01

    Je souhaite faire une requete pour avoir le resultat ci dessous :

    N°Nomenclature Article1 désignation Article2 désignation Article3 désignation
    N01 M01 toto M02 tata M03 titi
    N02 M04 tutu M01 toto M03 titi
    N03 M02 tata M04 tutu M01 toto

    Merci d'avance pour votre aide
    0
  3. Soulitude Messages postés 26 Statut Membre 7
     
    Bonsoir,

    Alors cette fois je pencherai pour ceci:

    SELECT N°Nomenclature, Article1, designation as designation1,
    Article2, designation as designation2,
    Article3, designation as designation3
    FROM Nomenclature, Article
    WHERE designation1 = (SELECT designation
    FROM Article, Nomenclature
    WHERE Article.Article = Nomenclature.Article1
    AND N°Nomenclature = "N01")
    AND designation2=(SELECT designation
    FROM Article, Nomenclature
    WHERE Article.Article = Nomenclature.Article2
    AND N°Nomenclature = "N02" )
    AND designation3=(SELECT designation
    FROM Article, Nomenclature
    WHERE Article.Article = Nomenclature.Article3
    AND N°Nomenclature = "N03" )

    Mais je pense que ta base de données n'est pas bien structurées, pour l'instant elle n'est pas modulable pour l'avenir.
    Enfin si elle reste statique je pense qu'une requête qui ressemble à celle ci, ferait l'affaire.
    Je l'ai fais de tête sans tester donc je ne t'assures pas qu'elle fonctionne mais a partir de ça tu trouveras la solution.
    0
  4. A.Nonymous
     
    SELECT
    'N°Nomenclature',
    art1.Article AS Article1,
    art1.'désignation' AS designation1,
    art2.Article AS Article2,
    art2.'désignation' AS designation2,
    art3.Article AS Article3,
    art3.'désignation' AS designation3
    FROM Nomenclature
    LEFT JOIN 'Article désignation' art1 ON art1.Article = Article1
    LEFT JOIN 'Article désignation' art2 ON art2.Article = Article2
    LEFT JOIN 'Article désignation' art3 ON art3.Article = Article3

    Par contre, si un jour le nombre d'articles dans la nomenclature augmente, il est clair qu'il faudra changer la structure des tables,
    0