title: SQL: return only those columns with different data
body: <p>I have two rows from a table that has many columns.  How do I return only those columns where the value for row1 does not equal the value for row2?</p>
  
  <p>I'm using Oracle 11.1.0.07</p>
  
  <p>~~  Edit: clarification  ~~</p>
  
  <p>Example:
  So I've got a table with rows:</p>
  
  <pre><code>1 a b c d e f g h i j k l
  2 a x c d e x g h y j k l
  3 a b x d e x g h x y k z
  </code></pre>
  
  <p>I want to return rows where id (first column) is 1 or 3, only those columns that are different.  So:</p>
  
  <pre><code>1 c f i j l
  3 x x x y z
  </code></pre>
  
  <p>with column names.</p>
  
  <p>In reality, the table I'm pulling from has 223007 rows, and 40 columns.  The above is a simplified example.  There are two rows (one each for primary key values) that I'm wanting to compare.</p>