Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

valtinho2005

Substituir primeiro Algarismo de todos registro

Recommended Posts

Bom dia!


Estou com um problema em um software que dou suporte. Vou tentar ser o mais direto possível:


Tenho o seguinte dados numa tabela:


codigo Cliente

C01 XXXXX

C02 AAAAA

C03 ZZZZZ

C04 YYYYY

... ...


Preciso rodar um Script (SQL Server 2008 R2) que troque o codigo de TODOS os registros, retirando a primeira LETRA, ou seja:


codigo Cliente

01 XXXXX

02 AAAAA

03 ZZZZZ

04 YYYYY

... ...


Obs: pode retirar a letra, ou pode trocá-la por 0.


Espero ajuda de vocês! Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Voce pode fazer por SUBSTRING.

Um exemplo:

 

declare @valor table (codigo varchar(3), Cliente varchar(max))insert into @valor (codigo, Cliente) values ('C01','XXXXX')insert into @valor (codigo, Cliente) values ('C02','AAAAAAA')insert into @valor (codigo, Cliente) values ('C03','ZZZZZZ')insert into @valor (codigo, Cliente) values ('C04','YYYYYYY')  SELECT SUBSTRING(codigo,2,5), Cliente from @valor
O SUBSTRING tem 3 valores:
O primeiro (codigo) é o campo a ser retirado algum carácter;
O segundo (numero 2) é a partir dele que vai ser contado a quantidade de caracteres a ser retirado
O terceiro (numero 5) é quantos caracteres vão sobrar no campo.
Foi uma explicação básica. Tem "n" variações para se fazer isso.
[]´s e boa sorte

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se eu quero trocar a primeira letra ficaria assim?:

 

SELECT SUBSTRING(codigo,1,2), Cliente from @valor

 

Ou seja, na tabela codigo, vai ser retirado do primeiro caracter e sobrar 2, ou seja:

 

de C01, vai sobrar 01,

 

se fosse, C0000001, seria SUBSTRING(codigo,1,7)?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.