Encore une question sous Access !

Bon, je vous explique mon souci :

  • J’ai une table A qui contient des titres de films (avec un identifiant) :

Donc, on a :

1 - La sanction
2 - Bronco Billy
3 - Les oiseaux

  • Une table B avec les réalisateurs (avec un Id également) :

1 - Eastwood
2 - Hitchcock

  • Une table C qui fait " lien " entre idréalisateur et idfilm

1,1
1,2
2,1

Je fais une zolie requête et j’obtiens 3 lignes :

Eastwood Bronco Billy
Eastwood La sanction
Hitchcock Les oiseaux

Mais mon but serait d’avoir 2 lignes (en fait une ligne par réalisateur quel que soit le nombre de films réalisés) soit :

Eastwood Bronco Billy La sanction Etc
Hitchcock Les oiseaux

Le but est d’avoir une ligne et une seule… (Via un état j’ai bien un regroupement par réalisateur unique mais j’ai toujours une ligne par film)

Il faut que ça passe par Access ou un autre joyeux luron de la bande Office exclusivement (on laisse tomber les idées à la PHP)
(En fait cela doit être exploitable via Excel pour des raisons de publipostage)

Merci à vous ?

La base exemple est là : La base est là

ce qui est sur, c’est qu’en SQL c’est pas possible. A toi de bidouiller ton résultat pour formater ton affichage. J’ai eu le problème dernièrement. Avec un GROUP BY tu peux sommer des nombre, mais pas concaténer des strings…

C’était super utile hein ^^

Amha avis, c’est contraire aux règles des bdd, tu aura beaucoup de difficultés à obtenir ça par une requete (à moins de mettre cote à cote un nombre indeterminé de requete equivalent au nombre max de film par réalisateur).
Tu peux cependant utiliser les états qui sont la pour ça.

Je vois qu’une seule solution : Le VBA…

Tu fais ta requête dans un module VBA, tu tritures le résultat pour avoir “réalisateur film” dans la première occurrence de ton recordset, et juste le film dans les occurrences suivantes. Tu concatènes tout ce petit monde et hop ! Directement dans l’état !

Parce que comme disait Dexter, en SQL c’est clairement pas possible

P.S : Du matin comme ça, je perds un peu mes mots, donc occurrence est peut-être à remplacer par un autre terme qui m’échappe totalement B)