>..Ho necessità di ordinare il risultato di un query in base ad
>un determinato valore di un campo.
>Mi spiego meglio, i record che hanno una determinata colonna
>uguale ad un certo valore devono essere visualizzati per primi
>dopo i restanti.
>Ho provato a fare:
>1) una query che mi visualizzia tutti i record che soddisfano
>la mia condizione,
>2) union con una query che mi visualizzia tutti gli altri record
>che non soddisfano la condizione.
>P urtroppo la union unisce ed ordina e quindi sono al punto di
>partenza. Come fare.(in pratica se la union funzionasse senza
>fare il merge delle due query andrebbe bene)
Ciao,
visto che gli insiemi che tratti sono mutualmente esclusivi,
utilizza UNION ALL anzichè UNION, così il risultato è la somma
dei 2 risultati.
Come esempio puoi provare con queste 2 semplici queries:
select 'a' as "UNION" from dual
union
select 'c' from dual
union
select 'b' from dual
union
select 'e' from dual
union
select 'd' from dual;
select 'a' as "UNION ALL" from dual
union all
select 'c' from dual
union all
select 'b' from dual
union all
select 'e' from dual
union all
select 'd' from dual;
ciao, Michele