hook_views_query_alter creating additional OR statements
Thanks to iLLin I was able to figure out an acceptable answer to this question by using the in operator, and replacing the entire array for the condition.

function customedm_views_query_alter(&amp;$view, &amp;$query) {
  if ($view-&gt;name == 'course_catalog') {
        foreach($query-&gt;where[1]['conditions'] as &amp;$condition){
            if ($condition['value'] == 422){            
                $newvalue = array(
                    field =&gt; 'field_data_field_course_subject.field_course_subject_tid',
                    value =&gt; array(311, 316, 326, 321),
                    operator =&gt; 'in'
                );                      


                $condition = $newvalue;
            }
        }
    }
}