Migrate DBTNG query with JOIN and IN I'm attempting to write DBTNG query for a Migrate v2 class (D6), and I can't quite get a WHERE clause using IN to work.  Here's the query I need:

select ngeuu.user_name, ngeu.email_address1
from nge_users ngeu inner join nge_user_to_group_tbl ngeutg on ngeu.user_id = ngeutg.user_id
where ngeutg.usergroup_id IN (16, 5608, 48, 34, 22, 26, 24, 18, 28, 20, 14, 12, 6879, 36);


This query returns the appropriate amount of rows.  The way I have the query written in my Migrate class is:

$query = db_select('nge_users', 'ngeu');
$query-&gt;innerJoin('nge_user_to_group_tbl', 'ngeutg', 'ngeu.user_id=ngeutg.user_id');
$query-&gt;fields('ngeu', array('user_name', 'email_address1'))
$query-&gt;condition('ngeutg.user_id', array(16, 5608, 48, 34, 22, 26, 24, 18, 28, 20, 14, 12, 6879, 36), 'IN');
$query-&gt;duplicate();


but I start getting duplicate rows after 4 records, even though the query by itself doesn't return any.  How do I need to change this to make it correct?

Thanks.
Your original conditions looks in usergroup_id, while the D7 versions checks user_id?

Also, there is no duplicate() method, only distinct().

You can use something like dpm((string)$query) to debug the generated query, and dpm($query-&gt;getArguments) to get the arguments passed to it.