I need to perform a near analysis to assign cases in one feature class to their nearest match on an attribute in a different feature class (ex: Tutors and Tutees need to be paired by same language spoken). I have not been able to find a way to do this. The closest I have reached to simplifying this process is to perform a split by attribute on the values for the matching variable. So instead of having all tutors in one feature class, I now have n language number of feature classes containing tutors and n language number of feature classes containing tutees. I then plan on performing a near analysis between each feature class. However this is extremely tedious and may result in 100+ near analyses needing to be performed because there are other criteria I will need to match independently on in a similar way.
Is there a better approach?
Much thanks in advance.
Edit: The near must be performed between two different layers to preserve the different roles of individuals being matched. I am new to learning modelbuilder so any ideas on conditionals, or iterators that could determine the "nearest" match on a shared attribute for points housed into two different layers would be much appreciated!