Desempenho relativo no SQLServer of Substring vs um combo Direita-Esquerda
Esta é uma pergunta baseada no desempenho, não uma "Eu não entendo"ou"Melhor prática" Pergunta, questão.
Eu tenho um campo varchar em um banco de dados SQLServer com garantia de mais de 7 caracteres. Preciso extrair um campo char (4) que consiste nos segundo, terceiro, quarto e quinto caracteres do varchar.
Por exemplo, se o varchar tivesse, o valor 1234567890 procuraria a parte 2345.
Existe um benefício no desempenho ao usar uma substring sobre uma combinação direita-esquerda?
SELECT SUBSTRING(account,2,4) FROM payment
ou
SELECT RIGHT(LEFT(account,5),4) FROM payment
Eu notei umleve vantagem usando a esquerda à direita em uma tabela com 1.760.335 registros, mas não tenho certeza se isso se deve a consultas em cache ou similares.
ATUALIZAR Eu fiz um pouco mais de lição de casa. Parece que, neste caso, a Direita-Esquerda é, em última análise, executada como uma Corda-Direita. Isso é uma regra? ou é assim que o SQLServer decidiu esfolar esse gato em particular?