SQL Server - indexar em uma coluna computada?

Estou entrando em uma mesa dezenas de vezes diferentes e, toda vez, participo (ou filtro) com base nos resultados de um SUBSTRING de uma das colunas (é uma string, mas preenchida com zeros e eu não t se preocupam com os últimos quatro dígitos). Como resultado, mesmo que essa coluna seja indexada e minha consulta usaria o índice, ela faz uma varredura de tabela porque o SUBSTRING em si não está indexado, portanto, o SQL Server precisa calculá-la para cada linha antes quando ela é unida.

Estou procurando ideias sobre como acelerar esse processo. Atualmente, há uma visualização na tabela (é um "SELECT * FROM", apenas para dar à tabela um nome amigável), e estou pensando em adicionar uma coluna à visualização calculada e indexá-la. Estou aberto a outras sugestões, no entanto - algum pensamento?

MAIS DETALHES: Eu deveria ter compartilhado isso para começar. A tabela recebe replicação do nosso sistema de faturamento, portanto, editar a tabela subjacente para adicionar uma coluna computada não é uma opção. Qualquer coluna computada teria que ser adicionada à exibição na tabela. Além disso, os zeros à esquerda não são sempre zeros à esquerda - eles são, às vezes, outros dados que não me interessam. Suponho que a verdadeira questão seja "Como posso juntar-me aos dados no meio de uma coluna VARCHAR enquanto também faço uso de um índice? Pesquisa de texto completo?"

Esclarecendo meu exemplo Estou simplificando, mas essencialmente, digamos que estou tentando procurar valores em uma coluna com os seguintes valores:

00000012345MoreStuff
00000012345Whatever
19834212345
Houses12345837443GGD
00000023456MoreStuff

Estou interessado em linhas onde SUBSTRING (7,5) = "12345", então eu quero as linhas 1-4, mas não a linha 5. O que estou propondo é adicionar uma coluna à minha visualização "SELECT *" que tem essa subseqüência nela e, em seguida, indexa com base nisso. Isso faz mais sentido?

questionAnswers(4)

yourAnswerToTheQuestion