title: Find SQL rows that are not shared between two tables with identical fields
body: <p>I have two tables with identical fields that share many rows.  I'd like to list all the rows in one table that cannot be matched in the other.  Specifically, these two tables are two different versions of an experiment where the results differ slightly.  An example is something like this:</p>
  
  <pre><code>|TableA|
  --------
  horse
  cat
  cow
  table
  
  |TableB|
  --------
  horse
  cat
  chair
  </code></pre>
  
  <p>I'd like to be able to see that <code>TableA</code> is missing <code>chair</code> from <code>TableB</code> and possibly in a different query that <code>TableB</code> is missing <code>cow</code> and <code>table</code> are missing from <code>TableA</code>.</p>
  
  <p>My thought was to do some sort of outer join on all fields, then sort out the rows with nulls in them, but this seems heavy handed.  Is this the way to go or is there are more elegant/efficient approach?</p>