Changing the logic for an exposed taxonomy select in a view
You need to use hook_views_query_alter(). And the logic would be as below.,

Both -&gt; Show only content tagged Both
When the user selects the Both, make no changes in the hook, just return the default result. So by this way the contents tagged under Both will be displayed.

Alpha -&gt; Show only content tagged Alpha and Both
Now use the alter hook, by default the query will have alpha's tid in it. Here you need to add the Both's tid to the query. So now the Alpha and the Both will be displayed.

Beta -&gt; Show only content tagged Beta and Both
Now use the alter hook, by default the query will have Beta's tid in it. Here you need to add the Both's tid to the query. So now the Beta and the Both will be displayed.


In simple term, just use the alter query and add the Both's tid to it. So that we will get the Both's content in all cases.