SQL - order by
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..
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
Curtidas 0
Respostas
Eduardo Oliveira
05/11/2012
ORDER BY pro_codigo
Já tentou isso ?
GOSTEI 0
Sérgio
05/11/2012
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.
E o que quero é exatamente a mesma ordem usada na pesquisa. obrigado.
GOSTEI 0
Deivison Melo
05/11/2012
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!!
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!!
GOSTEI 0
Sérgio
05/11/2012
select * from procedimento
where to_char(pro_codigo)
ele traz ordenado crescente...
não funcionou
where to_char(pro_codigo)
ele traz ordenado crescente...
não funcionou
GOSTEI 0
Tiago
05/11/2012
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
Espero ter ajudado
GOSTEI 0
Claudia Nogueira
05/11/2012
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:
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
GOSTEI 0
Deivison Melo
05/11/2012
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).
PS. Inclusive preciso que tb poste a estrutura de sua tabela (campos e seus respectivos tipos de dados).
GOSTEI 0
Sérgio
05/11/2012
Deu certo Claudia, parabéns e muito obrigado !!
GOSTEI 0
Eliézio Mesquita
05/11/2012
Bom dia Sérgio,
Tem como você colocar eu post com Concluído?
Obrigado e abraço!
Tem como você colocar eu post com Concluído?
Obrigado e abraço!
GOSTEI 0
Sérgio
05/11/2012
Como faço para marcar o incidente como encerrado?
GOSTEI 0
Eliézio Mesquita
05/11/2012
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
GOSTEI 0