Order by independente da ordem dos números se encontram

Dúvidas, dicas e truques de PL/SQL. Aqui também vão assuntos relacionados a pacotes, triggers, funções, Java-Stored Procedures, etc
Responder
katiacd
Rank: Programador Pleno
Rank: Programador Pleno
Mensagens: 37
Registrado em: Seg, 09 Mai 2016 3:07 pm
Cristine

Analista Pleno

Boa noite pessoal!

Alguém pode me ajudar? Preciso trazer os dados de uma consulta , com o retorno conforme abaixo, independente da ordem dos números se encontram.
Quando executo a query, ele sempre retorna ordenando. E não quero desta forma, preciso que retorne como no pequeno exemplo ( Necessidade).
E minha consulta, trará mais de 100 colunas,e estes números podem ser aleatórios, mas que seguirão conforme meu select.

Exemplo simples do meu select:

Selecionar tudo

select 98,  'Estoque' from dual
union all
select 101, 'Vendas' from dual
union all
select 100, 'Contas a Vencer' from dual
union all
select 97,  'Contas a Pagar' from dual
Necessidade:

Selecionar tudo

id_cod 	dsc_codigo

98	    Estoque
101	    Vendas
100	    Contas a Vencer
97	    Contas a Pagar

obrigada
Kátia
katiacd
Rank: Programador Pleno
Rank: Programador Pleno
Mensagens: 37
Registrado em: Seg, 09 Mai 2016 3:07 pm
Cristine

Analista Pleno

Consegui fazer, caso alguém interesse....ver a solução.

Selecionar tudo

SELECT (codigo, Valor> BULK COLLECT INTO teste FROM tb_teste
(
select 1, 1, 'Valor Produto' from dual
union all
select 2, 2, 'Qtde Produto' from dual
union all
select 3, 98, 'Descrição Produto' from dual
union all
select 4, 101,'Qtde Vendas' from dual
union all
select 5, 50, 'Qtde em Estoque' from dual
union all
select 6, 97, 'Qtde Pedida' from dual
union all
select 7, 100, 'Qtde a Entregar' from dual
order by 1
)
obrigada
Avatar do usuário
dr_gori
Moderador
Moderador
Mensagens: 5024
Registrado em: Seg, 03 Mai 2004 3:08 pm
Localização: Portland, OR USA
Contato:
Thomas F. G

Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered

Ótimo.
Outra forma bem comum é assim:

Selecionar tudo

select 98,  'Estoque' from dual
union all
select 101, 'Vendas' from dual
union all
select 100, 'Contas a Vencer' from dual
union all
select 97,  'Contas a Pagar' from dual
ORDER BY decode( codigo, 98, 1,    101, 2,  100, 3,    97, 4    , 99) 
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 20 visitantes