Usuário com melhor resposta
Mover informações de um campo para outro

Pergunta
-
Olá pessoal, preciso de uma ajuda,
Eu preciso mover informações de um campo texto para um outro campo numérico dentro da mesma tabela, porém retirando deste campo texto apenas as informações numéricas.
Exemplo:
Campo
RegistroPrimitivo AnotMargem
0 REG ANTERIOR 73.505
Preciso pegar o numero 73.505 e jogar para o campo RegistroPrimitivo
Ficando assim:
RegistroPrimitivo AnotMargem
73505 REG ANTERIOR
Porém tenho muitas variações neste campo AnotMargem
Como por exemplo:
REG ANTERIOR 70.225
REG ANTERIOR N. 52.862
65.951
REG.ANT.143.177
REG.ANT.: 142.384
P/ FINS DE CONSERVACAO
REG.ANT.: 144.059
Tem alguma forma de fazer isso colocando essas particularidades?
set dateformat dmy
select distinct tblWTDRegistros.PK_Registro as Registro, ''as 'Compl. Registro', tblWTDNaturezas.Descricao,
case when tblWTDAverbacoes.PK_Averbacao = 1
then ''
when tblWTDAverbacoes.PK_Averbacao = 0
then ''
else (tblWTDAverbacoes.PK_Averbacao)
end as 'Registro Primitivo',
'' 'Compl. Registro Primitivo',
tblWTDNaturezas.Descricao as 'Natureza Juridica',
tblWTDNomesRegistros.Nome as 'Nome da PJ',
tblWTDAverbacoes.AnotMargem,
case when tblWTDNaturezas.PK_Natureza In (414,474,603,618,530) then 1
when tblWTDNaturezas.PK_Natureza In (318,319,321,619,323,327,680) then 2
when tblWTDNaturezas.PK_Natureza In (465) then 3
end as Tipo_Ato
from tblWTDRegistros
inner join tblWTDAverbacoes on tblWTDAverbacoes.FK_tblWTDRegistrosPK_Registro = tblWTDRegistros.PK_Registro
inner join tblWTDGrupos on tblWTDGrupos.PK_Grupo = tblWTDRegistros.FK_tblWTDGruposPK_Grupo
inner join tblWTDNaturezas on tblWTDNaturezas.PK_Natureza = tblWTDRegistros.FK_tblWTDNaturezasPK_Natureza
inner join tblWTDNomesRegistros on tblWTDNomesRegistros.FK_tblWTDRegistrosPK_Registro = tblWTDRegistros.PK_Registro
inner join tblWTDDoctosRegistros on tblWTDDoctosRegistros.FK_tblWTDRegistrosPK_Registro = tblWTDRegistros.PK_Registro
inner join tblWTDNaturezasPorGrupo on tblWTDNaturezasPorGrupo.FK_tblWTDNaturezasPK_Natureza = tblWTDNaturezas.PK_Natureza
where tblWTDNaturezasPorGrupo.FK_tblWTDGruposPK_Grupo=2
and tblWTDNaturezas.PK_Natureza in ( 312,313,317,318,319,321,619,323,327,
328,329,330,332,333,414,434,465,664,474,603,618,680,530)
order by tblWTDRegistros.PK_Registro asc
Respostas
-
Deleted
- Marcado como Resposta Tiago_Aurelio quinta-feira, 28 de novembro de 2019 14:07
Todas as Respostas
-
-
No caso os numeros estarão sempre no final, sobre os exemplos que eu mandei
('REG ANTERIOR 70.225'), ('REG ANTERIOR N. 52.862'), ('65.951'), ('REG.ANT.143.177'), ('REG.ANT.: 142.384'), ('P/ FINS DE CONSERVACAO'), ('REG.ANT.: 144.059');
São exemplos, mas vou ter outros casos como REG ANTERIOR N.56335, REG. ANTERIOR 18366, tem 700 mil registros, nao da pra mim listar todos os tipos aqui, o certo é que tenho que pegar dos os numeros que for depois disso abaixo
('REG ANTERIOR , ('REG ANTERIOR , ('65.951'), ('REG.ANT. ('REG.ANT.: ('P/ FINS DE CONSERVACAO'), ('REG.ANT.:
-
-
Sim entendi,
Tem como eu fazer um update deste resultado para o campo registroPrimitivo, partindo do case que voce montou no codigo 2 ?
- Editado Tiago_Aurelio quarta-feira, 27 de novembro de 2019 17:51 acres
-
-
-
-
-
-
-
-
-
-
Entendi Jose
Na verdade RegistroPrimitivo é um alias da PK_Averbação
Como poderia contornar isso:?- Editado Tiago_Aurelio quinta-feira, 28 de novembro de 2019 11:51 acres
-
Deleted
- Marcado como Resposta Tiago_Aurelio quinta-feira, 28 de novembro de 2019 14:07
-
-