Estou com uma dificuldade para fazer uma consulta no mysql e gostaria de saber o que eu poderia fazer para resolver.
O problema é o seguinte:
Tenho uma tabela que contém ID e CPF de várias pessoas, por exemplo:
CPF ID
73155332001 49
55555555555 49
55555555555 61
45454545588 49
Como resultado, eu gostaria que me retornasse somente os CPFs que aparecem cadastrados com diferentes IDs, por exemplo o CPF 55555555555, que possui cadastro com o ID 49 e 61.
Eu utilizei o seguinte comando:
SELECT table1.CPF
FROM 2012cpf table1
WHERE
(
SELECT count(table2.CPF)
FROM 2012cpf table2
WHERE table2.ID = 61 AND
table2.CPF = table1.CPF) > 0
AND
(
SELECT count(table3.CPF)
FROM 2012cpf table3
WHERE table3.ID = 49 AND
table3.CPF = table1.CPF) > 0
O problema, é que ele fuciona para tabelas pequenas, porém, quando tento executar em uma base de 3GB ele fica processando e não dá nenhuma resposta. Alguém sabe como posso contornar isso?
Pergunta
freitastulio
Boa tarde,
Estou com uma dificuldade para fazer uma consulta no mysql e gostaria de saber o que eu poderia fazer para resolver.
O problema é o seguinte:
Tenho uma tabela que contém ID e CPF de várias pessoas, por exemplo:
CPF ID
73155332001 49
55555555555 49
55555555555 61
45454545588 49
Como resultado, eu gostaria que me retornasse somente os CPFs que aparecem cadastrados com diferentes IDs, por exemplo o CPF 55555555555, que possui cadastro com o ID 49 e 61.
Eu utilizei o seguinte comando:
SELECT table1.CPF
FROM 2012cpf table1
WHERE
(
SELECT count(table2.CPF)
FROM 2012cpf table2
WHERE table2.ID = 61 AND
table2.CPF = table1.CPF) > 0
AND
(
SELECT count(table3.CPF)
FROM 2012cpf table3
WHERE table3.ID = 49 AND
table3.CPF = table1.CPF) > 0
O problema, é que ele fuciona para tabelas pequenas, porém, quando tento executar em uma base de 3GB ele fica processando e não dá nenhuma resposta. Alguém sabe como posso contornar isso?
Obrigado!
Link para o comentário
Compartilhar em outros sites
4 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.