Fórum SQL - order by #428010

05/11/2012

0

bom dia;

select * from procedimento
where pro_codigo in (
40901300,
40101010,
40901130,
10101136,
...
...
40901122,
40201120)

Como posso fazer para trazer o resultado desta pesquisa, na mesma ordem que ela foi feita:

40901300, DESCRIÇÃO, PREÇO, ETC...
40101010, DESCRIÇÃO, PREÇO, ETC...

Não sei se fui claro quanto a meu questionamento..


Sérgio

Sérgio

Responder

Posts

05/11/2012

Eduardo Oliveira

ORDER BY pro_codigo


Já tentou isso ?
Responder

Gostei + 0

05/11/2012

Sérgio

sim.. mas por padrão esse comando usa a opção ASC, trazendo a pesquisa em ordem crescente.
E o que quero é exatamente a mesma ordem usada na pesquisa. obrigado.
Responder

Gostei + 0

05/11/2012

Deivison Melo

o campo: "pro_codigo" é VARCHAR2 ou NUMBER?, caso seja number não tem como termos o resultado desejado em nenhuma das ordenações...

Caso seja um number, recomendo o uso da função: to_char(pro_codigo) onde é feito um "cast" na informação e com isso a possibilidade de trabalhar com o number como se fosse um varchar2...

Qualquer dúvida por favor me comunicar!!
Responder

Gostei + 0

05/11/2012

Sérgio

select * from procedimento
where to_char(pro_codigo)

ele traz ordenado crescente...

não funcionou
Responder

Gostei + 0

05/11/2012

Tiago

Sérgio, você gostaria de agrupar as informações? se for precisa utilizar a cláusula GROUP BY... caso você queria apenas ordenar utilize a clasula order by asc(crescente) ou desc(decrescente)...

Espero ter ajudado
Responder

Gostei + 0

05/11/2012

Claudia Nogueira

Estava pensando aqui em como ter esse retorno, da forma que você quer de um jeito simples, porém é complicado mesmo que as opções do IN sejam fixas.
Se forem fixas, pra conseguir isso ficaria mais ou menos assim:
SELECT (CASE p. pro_codigo
        WHEN 40901300 THEN 1
        WHEN 40101010 THEN 2
        WHEN 40901130 THEN 3
        WHEN 10101136 THEN 4 
        WHEN 40901122 THEN 5
        WHEN 40201120 THEN 6 END) ordem, p.*
  FROM procedimento p
where p.pro_codigo in (
40901300,
40101010,
40901130,
10101136,
40901122,
40201120)
ORDER BY 1
Responder

Gostei + 0

05/11/2012

Deivison Melo

Por favor, detalhe de forma minuciosa como vc precisa da consulta que elaborarei e postarei a solução aqui...

PS. Inclusive preciso que tb poste a estrutura de sua tabela (campos e seus respectivos tipos de dados).
Responder

Gostei + 0

05/11/2012

Sérgio

Deu certo Claudia, parabéns e muito obrigado !!
Responder

Gostei + 0

21/11/2012

Eliézio Mesquita

Bom dia Sérgio,

Tem como você colocar eu post com Concluído?

Obrigado e abraço!
Responder

Gostei + 0

21/11/2012

Sérgio

Como faço para marcar o incidente como encerrado?
Responder

Gostei + 0

21/11/2012

Eliézio Mesquita

Como faço para marcar o incidente como encerrado?


No inicio do seu post você vai achar a opção
[Modificar status do Chamado] aqui você pode mudar o status para concluído.

Obrigado
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar