Boa noite pessoal!
Bem,
antes de mais nada já digo que sou péssimo no que se trata de SQL, então estou passando por uma dificuldade tremenda para resolver o problema abaixo. Vamos lá!
Tenho uma tabela na qual chamarei de T1 que tem dois campos ID e NOME. O problema da tabela T1 é que a mesma tem vários nomes repetidos, mas com id’s diferentes.
Logo, tenho uma outra tabela que se chama T2, nela tenho os id’s da T1 relacionados com os ids de uma outra tabela T3.
O que venho algum tempo tentando fazer é “equalizar” a minha tabela T1. Ou seja, deletando os registros duplicados, mas apenas aqueles registros que não estejam sendo relacionados na tabela T2.
O máximo que consegui fazer até o momento e verificar quais registros estão duplicados na tabela T1 e quantas vezes eles ocorrem:
SQL:
SELECT
tmp.NAME,
COUNT(*) REGISTROS_DUPLICADOS
FROM
T1 tmp
GROUP BY
NAME
HAVING
COUNT(*) > 1;
Em conversa com um amigo o mesmo me disse que talvez eu tenha que realizar um PL/SQL, mas sou bem ignorante nessa parte.
Pessoal, não sei se consegui ser claro na minha necessidade, caso haja alguma duvida estarei a disposição para juntos tentarmos solucionar meu problema.
Agradeço a atenção e o tempo de todos desde já!
Um abraço.