DUPLICADOS NO SQL
Importei um cadastro de pacientes no SQL, depois usando o having tirei os pacientes que estavam duplicados, mas ele so retira os q tem o nome escrito exatamente igual. Entao ficou ums 12 mil registros duplicados ainda.
POr exemplo: Diogo Oliveira Munarin
Diogo O. Munarin
Estou com esse problema no banco, gostaria de saber se existe alguma forma para q eu possa ver os q tem as 4 primeiras letras no nome, mais as 4 primeira letra do nome da mae, e data de nascimento iguais.
O q desse igual ele conta.
Obs..: Gostaria q fosse em uma instruçao sql. Pois no vb demoraria demais para executar isso.
POr exemplo: Diogo Oliveira Munarin
Diogo O. Munarin
Estou com esse problema no banco, gostaria de saber se existe alguma forma para q eu possa ver os q tem as 4 primeiras letras no nome, mais as 4 primeira letra do nome da mae, e data de nascimento iguais.
O q desse igual ele conta.
Obs..: Gostaria q fosse em uma instruçao sql. Pois no vb demoraria demais para executar isso.
VOCE PODERIA USAR A INSTRUÇÃO LIKE....
ISSO IRA RETORNAR TUDO QUE FOR PARECIDO COM OLIVEIRA...
ESPERO TER AJUDADO
FLW
SELECT *
FROM TABELA
WHERE NOME LIKE '%OLIVEIRA%'
ISSO IRA RETORNAR TUDO QUE FOR PARECIDO COM OLIVEIRA...
ESPERO TER AJUDADO
FLW
Olá, experimente adaptar esta query :
use banco
go
/* Localiza registros duplicados */
select codigo, count(codigo) from tabela group by codigo having count(codigo)>1
/* Elimina registros duplicados */
select distinct * into #tabelatmp from tabela
truncate table tabela
insert into tabela select * from #tabelatmp
ela pode ser útil.
Rogério.
use banco
go
/* Localiza registros duplicados */
select codigo, count(codigo) from tabela group by codigo having count(codigo)>1
/* Elimina registros duplicados */
select distinct * into #tabelatmp from tabela
truncate table tabela
insert into tabela select * from #tabelatmp
ela pode ser útil.
Rogério.
Diogo,
Com o comando like, você terá o problema de pegar todos os nomes que tiverem oliveira, tipo:
Marco Oilveira Andrade
Segio O. Oliveira
Sergio OsWaldo oliveira
Até trará os repetidos, mas poderá e provavelmente trará resultados indesejados.
A segund aopção apresentada foi utilizar o campo código. Está funciona se você tiver algum outro campo que possa utilizar para realizar a comparação tipo Celular...
Agora pelo prórprio nome acho inviável devido a quantidade de combinções possÃÂÂveis que você terá para saber se um nome é mesmo igual ao outro, sem contar que posso ter duas pessoas como o nome José Silva, porém com os outros campos diferentes. Tem de usar um campo que seja realmente impossÃÂÂvel de repetir para duas pessoas distintas tipo RG.
Espero ter ajudado.
Com o comando like, você terá o problema de pegar todos os nomes que tiverem oliveira, tipo:
Marco Oilveira Andrade
Segio O. Oliveira
Sergio OsWaldo oliveira
Até trará os repetidos, mas poderá e provavelmente trará resultados indesejados.
A segund aopção apresentada foi utilizar o campo código. Está funciona se você tiver algum outro campo que possa utilizar para realizar a comparação tipo Celular...
Agora pelo prórprio nome acho inviável devido a quantidade de combinções possÃÂÂveis que você terá para saber se um nome é mesmo igual ao outro, sem contar que posso ter duas pessoas como o nome José Silva, porém com os outros campos diferentes. Tem de usar um campo que seja realmente impossÃÂÂvel de repetir para duas pessoas distintas tipo RG.
Espero ter ajudado.
Obrigado pela ajuda, mas nenhum dos dois resolveu =/
é aquilo que te falei, se vc não tiver algum outro campo que não seja o nome na tabela para poder identificar registros duplicados, esta operação não será impossÃÂÂvel, pois terá forma de fazer mas não pelo sql somente.
DIOGOMUNARIN,
Faz via aplicação mesmo... afinal, é só uma vez que vai fazer isto não é !?
Então.. é até melhor que você pode tratar melhor as informações.
Faz via aplicação mesmo... afinal, é só uma vez que vai fazer isto não é !?
Então.. é até melhor que você pode tratar melhor as informações.
Tópico encerrado , respostas não são mais permitidas