If a user tries to join two tables and the joining columns are incompatible the join will fail, even if there would be a valid match if the columns were the same type. Allowing the join even though it will result in 0 matches can be confusing to a user, especially one who is unfamiliar with how things work at the database level.
Instead, a warning or error should appear in the Join window letting the user know that they are about to waste their time, both during the join as well as the hours of frustration afterward trying to figure out why it's not working when it looks like it should.
A user spent several days trying to troubleshoot this same issue. He received the warning that the join had no matches when he tried to validate it but did not know enough to recognize what the message meant, i.e. that there was underlying column incompatibility. To the user, 12345 was equal to “12345”.
Even something as simple as a message above or below the Join has no matches warning like “cannot join integer and string columns” might have saved the user numerous hours extracting data, deleting columns, and whatever else they did to fix a problem for which they had no useful guiding hints.