Forum |  HardWare.fr | News | Articles | PC | Prix | S'identifier | S'inscrire | Aide | Shop Recherche
1605 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  SQLSERVER : Transformer listedans colonne en lignes

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

SQLSERVER : Transformer listedans colonne en lignes

n°2295197
andeim
I'll be back
Posté le 25-01-2017 à 10:59:11  profilanswer
 

Bonjour,
Sur du SQL Server, j'ai une table de cette sorte :
 
ID | LIBELLE | TYPES
1  | Nom1    | 1;
2  |Nom2     | 4;7;9;
3  |Nom3     | 3;2;
 
J'aimerai extraire cette table sous la forme  
ID | LIBELLE | TYPES
1  | Nom1    | 1
2  |Nom2     | 4
2  |Nom2     | 7
2  |Nom2     | 9
3  |Nom3     | 3
3  |Nom3     | 2
 
Une idée ?
 
Merci d'avance
 


---------------
CS GO player ;)
mood
Publicité
Posté le 25-01-2017 à 10:59:11  profilanswer
 

n°2295203
TotalRecal​l
Posté le 25-01-2017 à 15:06:44  profilanswer
 

En natif (mais super récent genre SQL Server 2014 ou 2016 ?) Il y a la fonction STRING_SPLIT

 

Et sinon tu peux faire un truc comme ça : http://stackoverflow.com/a/5493616/461444
Vu que ça utilise une CTE ça doit demander au moins la version 2008 mais c'est natif


Message édité par TotalRecall le 25-01-2017 à 15:10:11

---------------
Réalisation amplis classe D / T      Topic .Net - C# @ Prog
n°2295231
andeim
I'll be back
Posté le 26-01-2017 à 10:21:55  profilanswer
 

Salut,
Du coup j'avais entre temps trouvé le lien que tu m'as donné.
Ca fonctionne très bien pour le coup.  
Je ne connaissais pas la possibilité d'utiliser with()... On progresse de jour en jour dans ce métier.


---------------
CS GO player ;)
n°2295238
TotalRecal​l
Posté le 26-01-2017 à 10:50:08  profilanswer
 

Ca s'appelle une CTE (common table expression). Basiquement ça sert à faire de la récursion, gérer des hiérarchies, ce genre de chose.
Mais ça peut vite filer mal à la tête.


Message édité par TotalRecall le 26-01-2017 à 10:50:37

---------------
Réalisation amplis classe D / T      Topic .Net - C# @ Prog

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  SQLSERVER : Transformer listedans colonne en lignes

 

Sujets relatifs
supprimer les lignes commençant par un mottransformer un fichier texte en XML
Lier les lignes d'une tableComment faire des lignes brisées ?
fusions de plusieurs lignes dans différentes colonnesAfficher plusieurs lignes sur une seule
Récupération 3ème et 4ème colonneFusion de lignes sur excel
création colonne pour chemin imageDiverses questions VBA
Plus de sujets relatifs à : SQLSERVER : Transformer listedans colonne en lignes



Copyright © 1997-2016 Hardware.fr SARL (Signaler un contenu illicite) / Groupe LDLC / Shop HFR