Como concatenar sql ordenados diferentemente?

Delphi

01/06/2004

Alô turma.. Belezura??

O problema é o seguinte...
Tenho 2 sql diferentes.. o campos são os mesmos mis a forma de ordenar é diferente.

Preciso fundir ou concatenar os dois para que aparecem juntos no grid..

Segue abaixo os sql:

SELECT * FROM contrato_faturamento WHERE cd_contrato = ´00825´ AND lg_pago = 1 order by dt_pagamento desc

SELECT * FROM contrato_faturamento WHERE cd_contrato = ´00825´ AND lg_pago = 0 order by dt_vencimento desc


Observer que os boletos pagos estão ordenados por ordem de PAGAMENTO e os não pagos por VENCIMENTO...

Como é que posso colocar essas duas pesquisas em um grid só utilizando apenas uma tQuery?

:?: :?: :?: :?: :?: :?: :?:


Zenner

Zenner

Curtidas 0

Respostas

Afarias

Afarias

01/06/2004

criando 2 (ou ao menos 1) VIEW e unindo elas com UNION



T+


GOSTEI 0
Paulo_amorim

Paulo_amorim

01/06/2004

Olá

Desculpe a ignorancia, mas um UNION não é util no caso?

Até+


GOSTEI 0
Afarias

Afarias

01/06/2004

|Desculpe a ignorancia, mas um UNION não é util no caso?

Apenas 1 ORDER BY pode aparecer em um SELECT, sendo assim, um UNION sem uso de VIEWS pode resolver sim, MAS APENAS se o order by for nos mesmos campos em ambos os SELECTS,

ex::

SELECT dt_pagamento FROM contrato_faturamento
WHERE cd_contrato = ´00825´ AND lg_pago = 1
UNION
SELECT dt_vencimento FROM contrato_faturamento
WHERE cd_contrato = ´00825´ AND lg_pago = 0
order by 1 desc


(neste caso, no campo de posição 1 que representa tanto data de pagamento quanto de vencimento -- mas se os campos estiverem em posições diferentes, terá de usar VIEWS)

T+


GOSTEI 0
POSTAR