I've been having this problem lately, where the join field tool won't work in Pro 2.6 or 2.7, or Python 3.7.9. I'll try to join on two fields that I know are identical, and it will say "WARNING 003237: Join had no matches." Is anyone else having this trouble? When I run the same script in Python 2.7, the fields join. This happens whether I'm trying to join a csv to a feature class, fc to fc, or a gdb table to fc.
I spoke with Colorado State University's Geospatial Centroid, and they instantly found the issue. I was trying to Join a Text(12) field with a Double field, which are incompatible. The issue instantly went away when I created a new Text(12) field and applied the contents of the old Double field into the values with the Calculate Field utility, using a simple Arcade script.
Text($feature.ID, '000000000000')
ID was the name of the old Double Field to pull from, and there are 12 zeroes to match the 12-digit text string. There was a hitch at first, because I had an active selection. Once I cleared that, the calculation went without a hitch, validation instantly worked with the Join function, and now it's Joined.
'WARNING 003237: Join had no matches.' is a completely inadequate error code. ArcGIS Pro should 100% state "Warning, you are attempting to join incompatible field types. Please ensure you are joining identical or compatible fields."
Firstly, if you're joining hosted feature classes, make the join layer non-hosted by exporting it. If you have a .csv or Excel file, export it into a table.
Secondly, make sure your field types are the same: double to double, text to text.
I've had issues in ArcGIS Pro even when all this was accounted for. In my latest case, my key was a set of numbers converted to text, but the fields wouldn't match keys properly until I added a letter at the end (e.g. the letter "a" to both keys; obviously the same letter to both). No other changes to the field. I'm not sure why.
Finally, try exiting and restarting Pro.