Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 11-10-2008
kia kia is offline
Miembro
 
Registrado: jul 2003
Posts: 78
Poder: 21
kia Va por buen camino
Question Como utilizo count ??

Tengo una sola tabla y el count no se hacerlo fubcionar para saber :

Cuantos equipos y modelos hay en los diferentes ciudades.
Campos: equipo, marca, modelo, ciudad. (
Código SQL [-]
       
        Close;
        SQL.Clear;
        SQL.Add('select Count (equipo,modelo) from '+NomTabla); 
        sql.Add('group by ciudad');
         open
Empleo D6 , componentes IBX, Fireb 1.5
Necesitaria una ayudita soy novato, ademas como puedo hacer visible los resultados.. Muchas Gracias.
__________________
Nadie nace enseñado, pide y se te dara.
Responder Con Cita
  #2  
Antiguo 11-10-2008
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
Poder: 21
enecumene Va por buen camino
Hola, el COUNT debes aplicarlo por cada campo:

Código SQL [-]
Select Count(campo1), Count(campo2) from Tabla where ...

Saludos.
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.
Responder Con Cita
  #3  
Antiguo 12-10-2008
kia kia is offline
Miembro
 
Registrado: jul 2003
Posts: 78
Poder: 21
kia Va por buen camino
Question

Quizas no me he explicado bien... soy novato... pongo hasta donde he llegado me funciona pero tarda un montonnnnnn.
Me lo podeis arreglar o mejorar para que me tarde menos..gracias.

Código SQL [-]
 procedure TEstadillo.Contador(Sender: TObject);
 var
 mode,mode1:string;
 yciudad,zciudad:string;
 ncuantos,:integer;
 begin

 DMTablas.hciudad.First;
 while not DMTablas.hciudad.eof do // ciudades
    begin  //recorre ciudades y  cta.equipos
    yciudad:=DMTablas.hciudadCIUDAD.Value;
    DMTablas.htipos.First;
    while not DMTablas.htipos.eof do //tipos de equipos
       begin
       mode:=DMTablas.htiposTIPO.Value;

       With MDOQLME do //query listado general 
        Begin
        Close;
        SQL.Clear;
        SQL.Add('select Count (*) from EQUIPOS');
        SQL.Add('Where CIUDAD=ciudad');
        SQL.Add('AND EQUIPO=equipo');
        SQL.Add('AND MODELO=modelo');
        ParamByName('pciudad').value:=yciudad;
        ParamByName('pequipo').value:=mode;
        ParamByName('pmodelo').value:=mode1;
        sql.Add('group by ciudad,equipo,modelo');
        open;
        ncuantos:=MDOqLME.fields[0].asinteger;
       end;
       //guardo los datos en una tabla para verla en un Rxdbgrid
       DMTablas.Tcontar.Append;
       if ncuantos<>0 then   begin //añade solo si hay equipos
          if zciudad<>yciudad then //evita repeticion de la ciudad en el RXdbgrid
             DMTablas.Tcontar.FieldByName('ciudad').value:=yciudad;
        zciudad:=yciudad; 
        DMTablas.Tcontar.FieldByName('equipo').value:=mode;
        DMTablas.Tcontar.FieldByName('marca').value:='---------------';   
        //DMTablas.Tcontar.FieldByName('modelo').value:='Total -------> ';
        DMTablas.Tcontar.FieldByName('modelo').value:=mode1;
        DMTablas.Tcontar.FieldByName('cantidad').value:=inttostr(ncuantos);
        DMTablas.Tcontar.Post;
        end;

    DMTablas.hmodelos.next;
    end;
    DMTablas.htipos.next;
    end;
    DMTablas.hciudad.next;
   end;
 end;

Los datos salen asi:
Código:
 Ciudad     equipo            marca      modelo   cantidad
 Granada      televisores                  avg          5
              televisores                  mmf         10
 Merida       televisores                  avg          2
              dvd                          fer          7          
......
Como ya dije soy novato... algun curso..gracias
__________________
Nadie nace enseñado, pide y se te dara.
Responder Con Cita
  #4  
Antiguo 13-10-2008
[FGarcia] FGarcia is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Cordoba, Veracruz, México
Posts: 1.123
Poder: 20
FGarcia Va por buen camino
Cita:
Empezado por kia Ver Mensaje

With MDOQLME do //query listado general
Begin Close;
SQL.Clear;
SQL.Add('select Count (*) from EQUIPOS');
SQL.Add('Where CIUDAD=ciudad');
SQL.Add('AND EQUIPO=equipo');
SQL.Add('AND MODELO=modelo');
sql.Add('group by ciudad,equipo,modelo');
ParamByName('pciudad').value:=yciudad;
ParamByName('pequipo').value:=mode;
ParamByName('pmodelo').value:=mode1;
open;
ncuantos:=MDOqLME.fields[0].asinteger;
end;
[/code]


Hola!

1. NOVATO es marca registrada de Caral Enterprises Inc. asi que ojo y te ponga una demanda.
2. No mencionas que motor de bd usas y con que componentes accesas a ese motor ni la version de delphi
3. Solo hago notar que en la sentencia sql que esta en negritas (la puse en esa posicion) tu la tenias al final, despues de pasar los parametros. No se si eso resuelva el problema pero no dejes de comentarnos tus experiencias.
__________________
ESTO ES UN FORO ... NO UN MÓVIL
¿Por qué no escribir de una manera comprensible para que los humanos lo podamos entender?

Última edición por FGarcia fecha: 13-10-2008 a las 02:41:54. Razón: solo para hacer notar que ya vi que si posteo su motor y demas
Responder Con Cita
  #5  
Antiguo 13-10-2008
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Hola kia, con una consulta y haciendo la agrupación por los campos que necesites debería funcionarte.

Código Delphi [-]
 With IbQuery do
  begin 
   Close;
   SQL.Clear;
   SQL.Add('Select ciudad, equipo, modelo, Count(ciudad)'); 
   SQL.Add('From '+NomTabla); 
   sql.Add('Group by ciudad, equipo, modelo');
   open;
  end;

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
  #6  
Antiguo 13-10-2008
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
Poder: 21
enecumene Va por buen camino
Hola, ya FGarcía y Caro te ha dados buenas respuestas, debería funcionarte y ... ¡Cuidado con lo de Novato!, ¡Es marca registrada como dice el compañero FGarcía!

Saludos.
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Que es un Sdk y como lo utilizo JULIPO API de Windows 4 08-09-2008 22:10:11
como utilizo mas de un comboBox Guadalupe .NET 1 07-06-2006 22:34:10
Como utilizo FPDF Coco_jac PHP 1 25-10-2005 10:53:46
como utilizo like armando SQL 3 22-12-2003 21:02:14
como utilizo el query noe SQL 2 17-12-2003 20:32:10


La franja horaria es GMT +2. Ahora son las 11:33:56.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi