sicuramente e' piu' oneroso un substring() di un concat.

Mi viene il dubbio che la tua chiave primaria non sia molto ottimizzata se devi usare un substring()....