Ik denk dat de versie met aaneenschakeling vrijwel altijd langzamer zal zijn.
Als een van de kolommen die u afzonderlijk vergelijkt, indexen heeft, kan de database normaal gesproken de indexen gebruiken om de join te optimaliseren. Wanneer u aaneenschakelingen vergelijkt, moet deze volledige tabelscans uitvoeren, omdat het resultaat van een berekening niet in de index staat.
En zelfs als de kolommen niet zijn geïndexeerd, kan de database de vergelijkingen nog steeds efficiënter uitvoeren. Het vergelijkt één paar kolommen tegelijk en kan stoppen zodra een van die vergelijkingen mislukt. Wanneer u de aaneenschakeling gebruikt, moet deze eerst alle kolommen in beide rijen combineren en vervolgens een tekenreeksvergelijking uitvoeren.
Ten slotte, als een van de kolommen numeriek is, vereist de aaneenschakeling de extra stap van het converteren van het nummer naar een tekenreeks.