How to query for null in nested db_or conditional
You can use isNull() in the db_and() condition, it'll work just fine:

$query-&gt;condition(db_or()
  -&gt;condition(db_and()
    -&gt;isNull('join_alias1.field_date_unassigned_value')
    -&gt;condition('join_alias2.field_date_assigned_value', $end_date, '&lt;=')
  )
  -&gt;condition(db_and()
    -&gt;condition('join_alias1.field_date_unassigned_value', $start_date, '&gt;=')
    -&gt;condition('join_alias2.field_date_assigned_or_submitted_value', $end_date, '&lt;=')
  )
);