title: empty result when using a subquery select
body: <p>I have two tables (table1, table2) in a database (both with type InnoDB). They both have a column &quot;article&quot;. In table1 &quot;article&quot; is the primary index, in table2 &quot;article&quot; is defined as &quot;unique&quot;. Both of those columns have data type <code>varchar(32)</code>, also the same collation.</p>
  <p>I am trying to get a list of all &quot;article&quot; values which are in table1, but NOT in table2.</p>
  <p>table1 contains about 5000 rows, table2 contains about 3000 rows, so I should get at least 2000 &quot;article&quot; values as a result. My query looks like this:</p>
  <pre><code>SELECT article FROM table1
  WHERE article NOT IN
  (SELECT article FROM table2);
  </code></pre>
  <p>But this returns an empty result...</p>
  <p>When I do it the other way around (i.e. select all &quot;article&quot;s from table2 which are not in table1), it works, that query returns around 700 values.</p>
  <p>I suppose this must have to do with the different index/unique status of &quot;article&quot; in the two tables. But how can I modify the query to get it working?</p>