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:
SELECT tf.id_tipo_frequencia, count(f.id_tipo_frequencia)
FROM tipo_frequencia tf LEFT JOIN
(frequencia f RIGHT JOIN aula a on f.id_aula = a.id_aula)
USING (id_tipo_frequencia)
WHERE a.id_aula = '145'
GROUP BY tf.id_tipo_frequencia;
[]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