2009-05-15 12 views
2

Dans le serveur SQL Comment puis-je transformer 1 ligne avec des colonnes varchar dans une colonne? Je pense que je dois utiliser Pivot, mais je ne peux pas trouver un exemple sans agrégateursComment puis-je transformer une table avec 1 ligne avec des colonnes varchar dans une colonne?

c'est la situation que je:

create table #tmp (ac varchar(100), bc varchar(100), cc varchar(100)) 
insert into #tmp (ac,bc,cc) 
Values ('test1','test2','test3') 

insert into #tmp 
Values ('test4','test5','test6') 

SELECT * 
FROM #tmp 
WHERE ac='test1' 

drop table #tmp 

J'ai besoin de transformer le résultat de la sélection dans une colonne, je utilisera la colonne résultat dans une autre requête imbriquée.

Merci!

+3

Pouvez-vous inclure quelques exemples de données et structure de la table? Facile pour nous, si nous n'avons pas à deviner. –

Répondre

1

Vous devez utiliser UNPIVOT, pivotent pas

create table #tmp (ac varchar(100), bc varchar(100), cc varchar(100)) 

insert into #tmp (ac,bc,cc) 

Values ('test1','test2','test3') 

SELECT 
    * 
FROM 
    #tmp 

SELECT 
    * 
FROM 
    #tmp 
UNPIVOT 
(
    [Column] FOR Data IN (ac, bc, cc) 
) uPIVOT 


drop table #tmp 
Questions connexes