Вы можете присоединиться к любым двум полям, которые имеют одинаковые данные (и они также должны иметь одинаковый тип данных). Если поля проиндексированы, у вас также не должно быть проблем с производительностью, если вы не объединяете два поля varchar (4000). Возможно, вам даже потребуется сделать это, если у вас плохой дизайн базы данных и один столбец служит более чем одной цели, особенно если вы использовали модель EAV.
Однако в этом сценарии вы не получите целостность данных. Без внешнего ключа для обеспечения соблюдения правил вы можете обнаружить, что в связанной таблице есть значения, которые не соответствуют родительской таблице. Это может привести к тому, что записи не будут видны в запросах, которые должны просматриваться, или записи, которые не могут быть правильно интерпретированы. Поэтому рекомендуется устанавливать внешние ключи там, где они применимы.