[firebase-br] Select em 2 tabelas

Mario brujeria em task.com.br
Seg Set 18 18:43:34 -03 2006


Ola,
tenta essa gambiarra:

SELECT M.* FROM MOVIMENTO M WHERE M.codigo IS IN (
(
select M.*, C.nome from movimento M, cliente C where M.tipo='C' and M.codigo=C.cliente
union
select M.*, F.nome from movimento M, filial F where M.tipo='F' and M.codigo=F.filial
)
ORDER BY M.codigo

1. Se quiser tenta depois colocar MOVIMENTO M, CLIENTE C também para
seleciona valores de cliente.

2. E depois especifica todos os parametros q serao recolhidos, ao invés
de usar o M.*

Valeu
Mario H.


Em Seg, 2006-09-18 às 15:10 -0300, Tricon - Paulo escreveu:
> A situação é a seguinte:
> 
> Tabela cliente
> -------------
> cliente
> nome
> 
> Tabela Filial
> -----------
> filial
> nome
> 
> Tabela Movimento
> -----------------
> numero
> codigo
> tipo(F-filial C-cliente)
> 
> O codigo pode ser o cliente ou filial.
> 
> Quero que o select resulte em
> 
> numero codigo nome
> 000001 00001 filial 1
> 000002 00002 filial 2
> 000003 00002 paulo ricardo
> 000004 00002 filial 2
> 000005 00001 joao pedro
> 000006 00010 pedro
> 
> Consegui com union mas ai não da para ordenar
> (
> select M.*, C.nome from movimento M, cliente C where M.tipo='C' and M.codigo=C.cliente
> union
> select M.*, F.nome from movimento M, filial F where M.tipo='F' and M.codigo=F.filial
> ).
> Tem outro jeito que de para ordenar?
> 
> 
> Como posso fazer o select trazendo o nome conforme a tabela.
> 
> 
> 
> 
> 
> Paulo Ricardo Schmitz
> Tricon Consultoria em Informática Ltda.
> Tel: (51)8439-1906    Skype: triconinformatica
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para editar sua configuração na lista, use o endereço http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa





Mais detalhes sobre a lista de discussão lista