GARANTIR DESCONTO

Fórum Order by em Union #351636

10/01/2008

0

Galera

É possível dar um order by em um UNION ??? Se alguém souber puder me passar um exemplo bem simples. Estou tentando aki mas não consigo.
Estou usando Delphi 6 + Firebird 2.0



Fico no aguardo

Rogério


Rogeranalista

Rogeranalista

Responder

Posts

10/01/2008

Pestana_

sim é possivel, eu fiz pequeno exemplo aqui:

supondo que tenho duas tabelas

Tabela A id status 1 N 2 N ---------- Tabela B id status 1 N 2 S 3 S 4 S


vou agrupar pelo campo status e selecionar dentro deste grupo o valor ´N´ para depois unir com o resultado do select da tabelaA.
O importante é que os campo que estão sendo ´unidos´ tem que ser do mesmo ´tipo´.

SELECT status FROM tabelaA
UNION
SELECT status FROM tabelaB GROUP BY status HAVING status = ´N´


não sei se exclareci a sua dúvida, mas qualquer coisa posta novamente.
flw


Responder

Gostei + 0

10/01/2008

Djjunior

select * from 
(
SELECT status FROM tabelaA 
UNION 
SELECT status FROM tabelaB ) s
order by status

ou 

SELECT campo1, campo2 FROM tabelaA 
UNION 
SELECT campo1, campo2 FROM tabelaB 
order by 2, 1 -- neste caso vou ordenar 1º pelo 2º campo depois pelo 1º


qdo vc tem union o order by só vai funcinar com o num da ordem do campo e ñ o nome do mesmo


Responder

Gostei + 0

10/01/2008

Pestana_

nossa esqueci de acrecentar o [b:cca178fde5]ORDER BY 1[/b:cca178fde5] no final :oops:


ficando assim: :arrow:
SELECT status FROM tabelaA 
UNION 
SELECT status FROM tabelaB GROUP BY status HAVING status = ´N´
ORDER BY 1


[b:cca178fde5]djjunior[/b:cca178fde5] valeu por ter reparado nisso !


flw.


Responder

Gostei + 0

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

Aceitar