Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

andrea cerqueira

[Resolvido] select de registros que tenham dois ou mais registros

Recommended Posts

to com uma duvida simples, quero pegar todos registros na tabela que tenham por exemplo dois ou mais registros com o campo "pedido" igual.

tipo na tabela tem o campo "pedido" e o "recorrencia", onde existem varios ou apenas um registro de tal "pedido" e no campo "recorrencia" vem de 1 até infinito, mas nunca repetido.

exemplo:

pedido | recorrencia
   1   |      1
   1   |      2
   1   |      3
   2   |      1
   3   |      1
   3   |      2
   4   |      1

quero um select que pegue os pedidos 1 e 3 apenas, pois só esses dois tem mais de um resgistro, usando > 1 na recorrencia não rola pois só retorna a partir do segundo.

 

ajuda? http://forum.imasters.com.br/public/style_emoticons/default/assobiando.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

ola andrea, estou tentando responder pela 4a vez aqui, vamos ver se agora vai

 

voce pode usar subselect

 

select * from (

select tabela.pedido, count(tabela.pedido) from tabela group by pedido

) as consulta where consulta.qtd > 1

 

espero que resolva abracos

 

to com uma duvida simples, quero pegar todos registros na tabela que tenham por exemplo dois ou mais registros com o campo "pedido" igual.

tipo na tabela tem o campo "pedido" e o "recorrencia", onde existem varios ou apenas um registro de tal "pedido" e no campo "recorrencia" vem de 1 até infinito, mas nunca repetido.

exemplo:

pedido | recorrencia
   1   |      1
   1   |      2
   1   |      3
   2   |      1
   3   |      1
   3   |      2
   4   |      1

quero um select que pegue os pedidos 1 e 3 apenas, pois só esses dois tem mais de um resgistro, usando > 1 na recorrencia não rola pois só retorna a partir do segundo.

 

ajuda? http://forum.imasters.com.br/public/style_emoticons/default/assobiando.gif

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

não é bem isso que eu quero, deixa eu tentar explicar novamente.

 

eu tenho isso:

pedido | recorrencia
   1   |      1
   1   |      2
   1   |      3
   2   |      1
   3   |      1
   3   |      2
   4   |      1

e quero que a consulta me retorne isso:

pedido | recorrencia
   1   |      1
   1   |      2
   1   |      3
   3   |      1
   3   |      2

e o que a gente tá fazendo me retorna isso:

pedido | recorrencia
   1   |      1
   3   |      1

eu não quero que agrupe entendeu, eu quero o contrario de distinct http://forum.imasters.com.br/public/style_emoticons/default/grin.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

com exemplo do q você quer eu entendo rs...

 

select * from tabela where pedido in (select pedido from tabela where recorrencia >1 )

Compartilhar este post


Link para o post
Compartilhar em outros sites

ele quer todos que tenham mais de uma ocorrencia

Compartilhar este post


Link para o post
Compartilhar em outros sites

SELECT pedido, recorrencia FROM tabela GROUP BY pedido HAVING COUNT(pedido) > 1 ) ORDER BY pedido, recorrencia

Se entendi é isso

 

veja lá

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.