Ir para conteúdo

POWERED BY:

Arquivado

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

Álvaro Córdova

Update complicado

Recommended Posts

Gostaria de saber como posso alterar uma colune de uma tabela mas só incluir um numero tipo tenho esse dados na tabela :

 

NF_NOTA NF_SERIE NF_DTEMIS

------- ------- -------- -----------------------

1000041 0000127 U 2008-05-08 00:00:00.000

1000042 0000128 U 2008-05-08 00:00:00.000

1000043 0000129 U 2008-05-08 00:00:00.000

1000047 0000133 U 2008-05-09 00:00:00.000

 

mas quero incluir um numero na coluna NF_NR nessa tabela para ela ficar assim:

 

NF_NR NF_NOTA NF_SERIE NF_DTEMIS

------- ------- -------- -----------------------

1009041 0000127 U 2008-05-08 00:00:00.000

1009042 0000128 U 2008-05-08 00:00:00.000

1009043 0000129 U 2008-05-08 00:00:00.000

1009047 0000133 U 2008-05-09 00:00:00.000

 

Alguem pode me ajudar ???

 

Álvaro Córdova

Compartilhar este post


Link para o post
Compartilhar em outros sites

Álvaro,

 

Somar 9000 na coluna "nf_nr", sendo ela inteira... não resolve o problema !

 

a NF 1009041... vair virar : 1018041

a NF 1009042... vair virar : 1018042

e assim sucessivamente...

 

O que você precisa é converter o "int" em um char(7) e separar os três primeiros dígitos do três último, inserindo um "9" entre eles (reconvertendo tudo para "int" depois).

 

Testa com este select...

 

select nf_nr, convert(int,left(str(nf_nr,7),3)+'9'+right(str(nf_nr,7),3))

from tabela

where nf_nr >= 1000041 and nf_nr <= 1000047

 

Mas observe o seguinte... por ser posicional (7 dígitos) somente nota-fiscais entre (1000000 e 9999999), vão funcionar neste esquema !!!

 

Caso seja necessário restrinja isso no where da query, adaptando de acordo com a faixa de numeração que você quer tratar.

 

Boa sorte !

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.