The union join requires the fields to exist in both data sources. You can fix the field names using Custom SQL but otherwise you will get errors regarding the mismatched field names. Unions are not like Left/Right/Inner/Outer joins but instead stack the data from one data source on top of the data from another source (often with CSV or Excel files) and the Join requires the fields to be matched by name across each data set. For more information check out the online help here:- Union Your Data .
Thanks for looking at this. Actually I think you will find that the union join does not require that the field headers are the same as there is a "merge mismatched fields" option. it is that option that I used to join the data no need for custom SQL.
Information on this can be found here:
Note that I've raised a case with Tableau on the matter.
UPDATE: I was able to recreate the issue (bug?) on a .twbx sample file supplied by technical support. The issue appears to arise when the field being merged has a (conditional) set based on it.