title: SQL convert column names to row values
body: <p>I have a table organized as follows:</p>
  
  <pre><code>Account Location Measure1 Measure2 Measure3
  -------------------------------------------
  123a     A       100       20%      5
  234b     A        75       80%      8
  </code></pre>
  
  <p>I want to create records as follows:</p>
  
  <pre><code>Account Location Measure    Value
  -----------------------------------
  123a     A       Measure1    100
  123a     A       Measure2    20%
  123a     A       Measure3    5
  234b     A       Measure1    75
  234b     A       Measure2    80%
  234b     A       Measure3    8
  </code></pre>
  
  <p>Because my measure names are the column headings and not column values under a heading called "Measure" I cannot pivot the data on the measure name. </p>
  
  <p>I know how to query what the column names are by querying <code>INFORMATION_SCHEMA.COLUMNS</code>. But I'm not sure how to proceed from there. I don't want to do a Union because there are about 100+ measure columns and the table is large. </p>
  
  <p>The only assistance I have been able to find on the web refers to splitting values in a single column (e.g. semi-colon delimited strings) into multiple records. UNPIVOT doesn't work because again the measure name is not a value in a column, it is a column heading. </p>
  
  <p>I would appreciate any assistance you can give me</p>