[firebase-br] count(*) com group by

Marcelo Silva marcvan em ig.com.br
Qua Jun 28 13:12:42 -03 2006


Como vc esta agrupando por dois campos... e obviamente possuem conteudos 
diferentes... entao vai resultar errado mesmo.

Se quer o total de registro use

SELECT COUNT(*)
FROM TABELA

/* Sem Group By */


Agora se quer o resultado de Dois campos da mesma tabela

SELECT
  (SELECT (COUNT(CAMPO1) FROM TABELA WHERE (COD_CAMPO = 
TP.COD_CAMPO)AND(?))) AS CAMPO1,
  (SELECT (COUNT(CAMPO2) FROM TABELA WHERE (COD_CAMPO = TP.COD_CAMPO)AND(?)) 
AS CAMPO2
FROM TABELA TP

COD_CAMPO é o campo chave da tabela

Veja que pegamos um campo em cada pesquisa detro da pesquisa principal TP

Onde existe AND(?) você acrescenta o filtro que deseja para contar o numero 
de ocorrencias de um determinado campo, pois ele deve ter algo em incomum

Este metodo pode ser usado em tabelas de estoque por exemplo onde vc busca 
as entradas e saidas

SELECT
  (SELECT COUNT(ENTRADAS) FROM ESTOQUE WHERE (COD_PROD = E.COD_PROD)AND(TIPO 
= 'E')) AS ENTRADAS
  (SELECT COUNT(SAIDAS) FROM ESTOQUE WHERE (COD_PROD = E.COD_PROD)AND(TIPO = 
'S')) AS SAIDAS
FROM ESTOQUE E
WHERE
  (E.DATA_ESCOLHIDA BETWEEN '?' AND '?')


Ou seja é só ter imaginação e irá longe :)




----------------------
Marcelo Silva
(11) 9693-4251
MSN: marcvan em ig.com.br

----- Original Message ----- 
From: "Filipe Belchior" <filipe_belch em yahoo.com.br>
To: <lista em firebase.com.br>
Sent: Wednesday, June 28, 2006 12:17 PM
Subject: [firebase-br] count(*) com group by


olá, paz,

essa sql não retorna, necessariamente, o que eu esperava..


select count(*)
from tabela1
group by campo1, campo2


..eu esperava o total de registros da consulta. poderiam me ajudar?


FILIPE BELCHIOR


_______________________________________________________
Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu celular. 
Registre seu aparelho agora!
http://br.mobile.yahoo.com/mailalertas/




______________________________________________
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



-- 
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.1.394 / Virus Database: 268.9.5/376 - Release Date: 26/06/2006






Mais detalhes sobre a lista de discussão lista