SQL Server unpivot plusieurs colonnes

Je suis en train de faire pivoter une table autour d'un nombre de colonnes pour arriver à 3 colonnes (pivot, le nom de colonne, valeur)

ainsi, par exemple:

name  |  age  |  gender
------+-------+---------
John  |   20  |    M
Jill  |   21  |    F

devient:

name | column | value
-----+--------+-------
John |  age   |   20
John | gender |   M
Jill |  age   |   21
Jill | gender |   F

J'ai googlé un peu, mais n'ai pas trouvé une situation similaire, surtout depuis que le pivot semble être fait dans la direction opposée de ce que je suis en train d'accomplir.

OriginalL'auteur mathematician | 2014-07-18