{SQL Server} transformer une colone en ligne pour [Résolu/Fermé]

Signaler
Messages postés
1
Date d'inscription
mercredi 24 juin 2009
Statut
Membre
Dernière intervention
24 juin 2009
-
 nabiloxy -
Bonjour,

Je viens solliciter votre aide pour un problème de requête sous SQL SERVER . Non sur le code exact, mais plutôt sur la méthode à utiliser.

Voila imaginons que j'ai deux tables comme celles-ci:

table 1
ID | Publisher | Placement | Campaign |
---------------------------------------------------------------------------------------
1 | MSN-FR | MSN-DR-DemiBan-234x60 | Cofidis-Flexibilis-NumDevis|
---------------------------------------------------------------------------------------------------------
2 | MSN-FR | MSN-WLM-Conversation18ans-LienText | Cofidis-Flexibilis-NumDevis|
---------------------------------------------------------------------------------------------------------
table 2

ID | Nom_champ | valeur_champ |
----------------------------------------------------------
1 | Nom | bilo |
----------------------------------------------------------
1 | Prenom | nabil |
----------------------------------------------------------
1 | ville | paris |
----------------------------------------------------------
2 | N-Dossier | 1253 |
----------------------------------------------------------
2 | agence | lille |
----------------------------------------------------------
2 | CP | 59000 |
----------------------------------------------------------
2 | ville | Lille |
----------------------------------------------------------
2 | date | 25/05/2009 |
----------------------------------------------------------

l'idée est plutôt simple je veux récupérer les information pour un ID donné , par exemple le ID=1:
SELECT A.ID, A.Publisher, A.Placement,B.champ,B.Valeur
FROM table1 A,table2 B
WHERE A.ID=B.ID and A.ID=1;

le résultat est :
ID | Publisher | Placement | Campaign | champ | valeur |
-----------------------------------------------------------------------------------------------------------------------
1 | MSN-FR | MSN-DR-DemiBan-234x60 | Cofidis-Flexibilis-NumDevis| Nom | bilo |
-----------------------------------------------------------------------------------------------------------------------
1 | MSN-FR | MSN-DR-DemiBan-234x60 | Cofidis-Flexibilis-NumDevis| prenom | nabil |
-----------------------------------------------------------------------------------------------------------------------
1 | MSN-FR | MSN-DR-DemiBan-234x60 | Cofidis-Flexibilis-NumDevis| ville | paris |
-----------------------------------------------------------------------------------------------------------------------

jusqu'au là tout va bien , mais c'est pas ce que je veux vraiment , ce que je veux c'est qu'il m'affiche ça :

ID | Publisher | Placement | Campaign | Nom | Prenom | Ville |
-------------------------------------------------------------------------------------
1 | MSN-FR | xxxxxxxxxx| xxxx | bilo | nabil | paris |

toute en sachant que sais pas combient de champ j'aurais pour un ID donné , id=1 il y a 3 pour id 2 il ya 5 ...l'avantage c que je peux solicité un seul ID à la fois .. etc


MERCI d'avance ..

2 réponses

Messages postés
29
Date d'inscription
samedi 27 juin 2009
Statut
Membre
Dernière intervention
5 février 2010
8
Tu souhaites donc agréger des données, c'est bien ça ? Voir ci-dessous si le lien répond à ta problématique.

http://ww11.xoowiki.com/Article/SQL-Server/agreger-des-champs-39.aspx
Merci Sacha79 j'ai trouvé ce que je cherchais c bien l'agrégation des champs. Merci encore une fois et à http://ww11.xoowiki.com/
Messages postés
870
Date d'inscription
mardi 23 juin 2009
Statut
Membre
Dernière intervention
8 août 2012
91
Hello, qui ya til dans la table 2 exactement ?
J'ai un peu de mal à comprendre qu'il y ait 3 ID (pareil) pour une meme information. Comment tu identifie chaque ligne?
Pour obtenir ça, --> ID | Publisher | Placement | Campaign | Nom | Prenom | Ville |
Il faut des jointures. Si tu as des jointures à 3 pates comment tu veux avoir un résultat cohérent à plus forte raison agregé ?