Mike and I were had this discussion above. Did we want to be  very strict (see first submission), or very loose about type conversions. This is the very loose version, with auto conversion according to the SQL standard. The very strict version would say no int/varchar, but also no int/double or varchar/datetime conversions. I have no preference. Either way the user needs to cast one side or the other of the union because the system guesses wrong.