[firebase-br] Select com group by

Sandro Souza escovadordebits em gmail.com
Qua Maio 27 10:20:49 -03 2009


Bom dia/tarde Marcelo.

Grande Marcelo, por gentileza, teste primeiro o seguinte código:

SELECT
  COUNT(*),
  DESCRICAO
FROM (
  SELECT
    FS.DESCRICAO
  FROM
    FOLLOWUP_OCORRENCIA FO,
    FOLLOWUP F,
    FOLLOWUP_STATUS FS
  WHERE
    (FO.DATA = CURRENT_DATE)AND
    (F.ID_FOLLOWUP = FO.ID_FOLLOWUP)AND
    (FS.ID_FOLLOWUP_STATUS = F.ID_FOLLOWUP_STATUS)) X
GROUP BY
  DESCRICAO

Caso não retorne a quantidade esperada, pode ser que seja o produto
cartesiano entre essas 3 tabelas, já que a descrição não está na tabela
FOLLOWUP, mas sim em uma terceira tabela (FOLLOWUP_STATUS) que também pode
ter mais de um registro com o mesmo ID_FOLLOWUP.

Por favor, poste o resultado para que possamos lhe ajudar.

Espero ter ajudado mais que atrapalhado. :D

2009/5/26 Marcelo Moreira <marcelomoreira.souza em gmail.com>

> Pessoal,
> Vejam o sql abaixo:
>
>
> select
>  count(*),
>  FS.DESCRICAO
> from
>    FOLLOWUP F
> inner join FOLLOWUP_OCORRENCIA FO on (F.ID_FOLLOWUP = FO.ID_FOLLOWUP)
> inner join FOLLOWUP_STATUS FS on (F.ID_FOLLOWUP_STATUS =
> FS.ID_FOLLOWUP_STATUS)
> where
>    FO.DATA = current_date
> group by
>    2
>
> Ele esta retornornando 19 registros quando na verdade o que eu preciso é
> que
> ele retorne apenas os 5 que tiveram ocorrencia no dia. O que acontece é que
> para cada registro na tabela FOLLOWUP eu posso ter mais de um registro
> relacionado na tabela FOLLOWUP_OCORRENCIA e pode ter mais de uma ocorrencia
> no mesmo dia para o registro da tabela FOLLOWUP.
> Como eu poderia resolver este select?
> Existe a possibilidade de encaixar um distinct(ID_FOLLOWUP) ou algo do tipo
> neste select?
>
> Obrigado pela atenção.
>
>
>
> Marcelo
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>



Mais detalhes sobre a lista de discussão lista