Mauricio De Biasi escreveu:
> Osvaldo opa tudo bem ? Realmente estava com um erro.. porem ele continua
> trazendo apenas os dados que existem na tabela frequencia junto a tabela
> tipo_frequencia ... o que estava querendo montra era um relatorio dessa
> maneira :
>
> Exp:
>
> id_tipo_frequencia | Total
> 1 ''
> 2 ''
> 3 15
>
> e no caso ele so me traz os quem valores:
>
> id_tipo_frequencia | Total
> 3 15
>
>
>
>
>> From: Osvaldo Rosario Kussama <[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] Valores em branco
>> Date: Mon, 16 Apr 2007 15:21:12 -0300
>>
>> Mauricio De Biasi escreveu:
>>> Pessoal,
>>>
>>> To com uma duvida aparetemente simples tenho uma tabela:
>>>
>>> id_tipo_frequencia int4 NOT NULL,
>>> ds_reduzida varchar(100),
>>> ds_completa text,
>>> ts_inclusao timestamp DEFAULT ('now'::text)::timestamp(6) with time
>> zone,
>>> ts_cancelado timestamp,
>>>
>>> <corta>
>>> e tenho outra tabela que recebe os id_dessa tabela marcando essa
>> frequencia
>>> para uma determinada unidade , gostria de saber se tem como eu trazer
>> todos
>>> os tipos de frequencia mesmo contabilizando em branco ?
>>>
>>> estava tentando fazer a query dessa maneira :
>>>
>>> select tf.id_tipo_frequencia, count(f.id_tipo_frequencia) from
>>> tipo_frequencia tf
>>> LEFT JOIN frequencia f USING (id_tipo_frequencia);
>>>
>>> right join aula a on f.id_aula = a.id_aula
>>>
>>> where a.id_aula = '145'
>>> group by tf.id_tipo_frequencia
>>>
>>> Mas so me traz o que teve realmente ... não trazendo os em branco
>>>
>>
>> Parece que tem um ; em lugar errado. Vou supor que foi apenas um erro na
>> transcrição do comando.
>>
>> Talvez seja uma questão de ordem das operações. Pelo que entendi, teste:
>>
Creio que o problema esteja na cláusula WHERE a.id_aula = '145'.
Tente:
SELECT tf.id_tipo_frequencia, count(f.id_tipo_frequencia)
FROM tipo_frequencia tf LEFT JOIN
(SELECT frequencia f RIGHT JOIN aula a on f.id_aula = a.id_aula
WHERE a.id_aula = '145') x
USING (id_tipo_frequencia)
GROUP BY tf.id_tipo_frequencia;
Deve listar todos os tipos de freqüência com a contagem das ocorrências
registradas para a aula de id 145.
[]s
Osvaldo
_______________________________________________
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