Olá Mauricio.

Pelo o que eu entendi, você tem 3 tabelas:
tipo_frequencia / frequencia / aula.
Analisando o select que você mandou, parece que nem todas as frequencias 
possuem o campo tipo_frequencia.
E analisando a tabela aula, nem todas as aulas tem a frequencia preenchida.

Estou correto?
Se for este o caso, você pode tentar de duas formas.
Fazer assim:

SELECT tf.ds_reduzida, COUNT(f.id_tipo_frequencia)
FROM tipo_frequencia tf
LEFT JOIN frequencia f ON f.id_tipo_frequencia = tf.id
LEFT JOIN aula a ON a.id_aula = f.id_aula
WHERE ... suas condições

Ou então tentar algo mais amplo.
Tipo:

SELECT tf.ds_reduzida, COUNT(f.id_tipo_frequencia)
FROM tipo_frequencia tf
FULL JOIN frequencia f ON f.id_tipo_frequencia = tf.id
FULL JOIN aula a ON a.id_aula = f.id_aula
WHERE ... suas condições

Espero ter ajudado.

----- Original Message ----- 
From: "Mauricio De Biasi" <[EMAIL PROTECTED]>
To: <[email protected]>
Sent: Thursday, April 19, 2007 12:18 PM
Subject: Re: [PostgreSQL-Brasil] RIGHT OUTER JOIN


Tiago,

Mesmo tirando essa condição não rolou ...


>From: "Tiago Athayde" <[EMAIL PROTECTED]>
>Reply-To: Grupo de Usuários do PostgreSQL no
>Brasil<[email protected]>
>To: "Grupo de Usuários do PostgreSQL no
>Brasil"<[email protected]>
>Subject: Re: [PostgreSQL-Brasil] RIGHT OUTER JOIN
>Date: Thu, 19 Apr 2007 08:42:11 -0300
>
>Olá Mauricio,
>
>Quando vc colocou essa condição f.id_colaborador = 21 ele so vai trazer
>tipo
>de frenquencia de quem tem frenquencia.
>
>
>Em 18/04/07, Mauricio De Biasi <[EMAIL PROTECTED]> escreveu:
>>
>>Pesoal,
>>
>>estou com select relativamente simples :
>>
>>
>>select tf.ds_reduzida, count(f.id_tipo_frequencia) from tipo_frequencia tf
>>RIGHT OUTER JOIN frequencia f USING (id_tipo_frequencia)
>>left join aula a on a.id_aula = f.id_aula
>>WHERE (a.dt_aula BETWEEN timestamp '2007-01-05' AND timestamp
>>'2007-01-05')
>>    and    a.id_unidade = 11 and f.id_colaborador = 21
>>group by tf.ds_reduzida
>>
>>
>>porem não entendo pq ele so me traz o valor de mesma chave entre as duas
>>tabelas ?
>>ao invez de trazer todas as opções de tipo mesmo que não tenha na outra
>>tabela ?
>>
>>_________________________________________________________________
>>Verifique já a segurança do seu PC com o Verificador de Segurança do
>>Windows
>>Live OneCare! http://onecare.live.com/site/pt-br/default.htm
>>
>>_______________________________________________
>>Grupo de Usuários do PostgreSQL no Brasil
>>Antes de perguntar consulte o manual
>>http://pgdocptbr.sourceforge.net/
>>
>>Para editar suas opções ou sair da lista acesse a página da lista em:
>>http://pgfoundry.org/mailman/listinfo/brasil-usuarios
>>


>_______________________________________________
>Grupo de Usuários do PostgreSQL no Brasil
>Antes de perguntar consulte o manual
>http://pgdocptbr.sourceforge.net/
>
>Para editar suas opções ou sair da lista acesse a página da lista em:
>http://pgfoundry.org/mailman/listinfo/brasil-usuarios

_________________________________________________________________
Descubra como mandar Torpedos SMS do seu Messenger para o celular dos seus
amigos. http://mobile.msn.com/

_______________________________________________
Grupo de Usuários do PostgreSQL no Brasil
Antes de perguntar consulte o manual
http://pgdocptbr.sourceforge.net/

Para editar suas opções ou sair da lista acesse a página da lista em:
http://pgfoundry.org/mailman/listinfo/brasil-usuarios



-- 
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.446 / Virus Database: 269.5.4/768 - Release Date: 19/4/2007 
05:32


_______________________________________________
Grupo de Usuários do PostgreSQL no Brasil
Antes de perguntar consulte o manual
http://pgdocptbr.sourceforge.net/

Para editar suas opções ou sair da lista acesse a página da lista em:
http://pgfoundry.org/mailman/listinfo/brasil-usuarios

Responder a