Usuário com melhor resposta
filtrar informaçoes

Pergunta
-
Prezados veja se e possivel, Sql simples, pore eu preciso do seguinte resultado:
SELECT
chaPA
resultado
003824 1983-11-09 00:00:00.000 02
003824 2010-05-01 00:00:00.000 10
006164 1990-07-02 00:00:00.000 02
006164 2010-05-01 00:00:00.000 10
006441 1991-04-01 00:00:00.000 02
006441 2006-09-01 00:00:00.000 04
006894 1992-02-03 00:00:00.000 02
006894 2008-09-01 00:00:00.000 04
006894 2008-10-01 00:00:00.000 09
006894 2009-05-01 00:00:00.000 10
006894 2009-07-01 00:00:00.000 10
006894 2009-09-01 00:00:00.000 10002816 1980-03-01 00:00:00.000 02
qual seria resultado esperado:
as chapas que esta repetindo, por exemplo, essa chapa 002816, so vem uma vez, nao poderia esta saindo no resultado da SQL.
obrigado a todos
Respostas
-
Boa tarde
Não sei se é das melhores, mas segue uma alternativa:
SELECT CHAPA, DTMUDANA, MOTIVO FROM PFHSTFCO as p WHERE (SELECT COUNT(*) FROM PFHSTFCO as s WHERE s.CHAPA = p.CHAPA) > 1 order by CHAPA
Espero que seja útil.
Assinatura: Imoveis em Guarulhos- Marcado como Resposta Ronnie Von sexta-feira, 16 de dezembro de 2011 11:39
-
Pelo que eu entendi, você gostaria que o registro fosse apresentado somente uma vez na consulta. Correto ? Se for isso, utilize o comando distinct. Ficaria assim:
SELECT distinct CHAPA,DTMUDANA,MOTIVO FROM PFHSTFCO order by chaPA
Guilherme Costa
Email: guilerme18@hotmail.comSe esta sugestão for útil, por favor, classifique-a como útil.
Se ela lhe ajudar a resolver o problema, por favor, marque-a como Resposta.- Marcado como Resposta Ronnie Von sexta-feira, 16 de dezembro de 2011 11:39
-
Tente assim.
Aqui você saberá os registros "repetidos" e a quantidade de repetições
SELECT count(CHAPA),CHAPA, MOTIVO FROM PFHSTFCO as p
group by CHAPA, MOTIVO
having count(CHAPA) > 1
Só que pelo que vi você não poderá usar o campo: DTMUDANA,neste script, pois como ele é diferente para cada registro, não será possível agrupar.- Marcado como Resposta Ronnie Von sexta-feira, 16 de dezembro de 2011 11:39
-
Ronnie
segue um exemplo usando cte (SQL 2005 ou superior)
;with cte_dados as ( SELECT CHAPA,DTMUDANA,MOTIVO, row_number() over(partition by chapa order by chapa) contador FROM PFHSTFCO ) select * from PFHSTFCO where chapa in (select chapa from cte_dados where contador=2) order by chaPA
Att.
Marcelo Fernandes
MCP, MCDBA, MCSA, MCTS.
Se útil, classifique!!!
Me siga no twitter: @marcelodba- Marcado como Resposta Ronnie Von sexta-feira, 16 de dezembro de 2011 11:39
Todas as Respostas
-
Boa tarde
Não sei se é das melhores, mas segue uma alternativa:
SELECT CHAPA, DTMUDANA, MOTIVO FROM PFHSTFCO as p WHERE (SELECT COUNT(*) FROM PFHSTFCO as s WHERE s.CHAPA = p.CHAPA) > 1 order by CHAPA
Espero que seja útil.
Assinatura: Imoveis em Guarulhos- Marcado como Resposta Ronnie Von sexta-feira, 16 de dezembro de 2011 11:39
-
Pelo que eu entendi, você gostaria que o registro fosse apresentado somente uma vez na consulta. Correto ? Se for isso, utilize o comando distinct. Ficaria assim:
SELECT distinct CHAPA,DTMUDANA,MOTIVO FROM PFHSTFCO order by chaPA
Guilherme Costa
Email: guilerme18@hotmail.comSe esta sugestão for útil, por favor, classifique-a como útil.
Se ela lhe ajudar a resolver o problema, por favor, marque-a como Resposta.- Marcado como Resposta Ronnie Von sexta-feira, 16 de dezembro de 2011 11:39
-
Tente assim.
Aqui você saberá os registros "repetidos" e a quantidade de repetições
SELECT count(CHAPA),CHAPA, MOTIVO FROM PFHSTFCO as p
group by CHAPA, MOTIVO
having count(CHAPA) > 1
Só que pelo que vi você não poderá usar o campo: DTMUDANA,neste script, pois como ele é diferente para cada registro, não será possível agrupar.- Marcado como Resposta Ronnie Von sexta-feira, 16 de dezembro de 2011 11:39
-
Ronnie
segue um exemplo usando cte (SQL 2005 ou superior)
;with cte_dados as ( SELECT CHAPA,DTMUDANA,MOTIVO, row_number() over(partition by chapa order by chapa) contador FROM PFHSTFCO ) select * from PFHSTFCO where chapa in (select chapa from cte_dados where contador=2) order by chaPA
Att.
Marcelo Fernandes
MCP, MCDBA, MCSA, MCTS.
Se útil, classifique!!!
Me siga no twitter: @marcelodba- Marcado como Resposta Ronnie Von sexta-feira, 16 de dezembro de 2011 11:39
-