Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

contar filas

Estas en el tema de contar filas en el foro de SQL Server en Foros del Web. Hola a todos, tengo el sigueinte problema: hago la siguiente consulta a la base de datos SELECT A.DATETIME ,A.IDCLIENT,B.DESCRIPTION, Sum(CASE WHEN A.IDVAR = 'WhD' THEN ...
  #1 (permalink)  
Antiguo 06/01/2009, 06:45
 
Fecha de Ingreso: junio-2008
Ubicación: Osorno
Mensajes: 155
Antigüedad: 16 años, 6 meses
Puntos: 3
Pregunta contar filas

Hola a todos, tengo el sigueinte problema: hago la siguiente consulta a la base de datos

SELECT A.DATETIME ,A.IDCLIENT,B.DESCRIPTION,
Sum(CASE WHEN A.IDVAR = 'WhD' THEN A.READVAL ELSE 0 END)
AS CANAL1,
Sum(CASE WHEN A.IDVAR = 'WhR' THEN A.READVAL ELSE 0 END)
AS CANAL2,
Sum(CASE WHEN A.IDVAR = 'F' THEN A.READVAL ELSE 0 END)
AS CANAL3,
Sum(CASE WHEN A.IDVAR = 'VarhD' THEN A.READVAL ELSE 0 END)
AS CANAL4,
Sum(CASE WHEN A.IDVAR = 'VArhR' THEN A.READVAL ELSE 0 END)
AS CANAL5,
Sum(CASE WHEN A.IDVAR = 'FP' THEN A.READVAL ELSE 0 END)
AS CANAL6
FROM READMASS A, TOPOLOGY B
WHERE A.DATETIME >= '2009-01-01 00:00.000' AND B.INSTYPE='Actaris SL7000' AND A.NOINS = B.NOINS AND B.DESCRIPTION LIKE '%TOTA%'
group by A.DATETIME,A.IDCLIENT,B.DESCRIPTION
ORDER BY A.IDCLIENT,A.DATETIME



hasta aqui todo bien, pero lo que necesito hacer ahora y no se como, es que me diga cuantas filas me me devuelve.
  #2 (permalink)  
Antiguo 06/01/2009, 07:01
Avatar de Andres95
Colaborador
 
Fecha de Ingreso: diciembre-2004
Mensajes: 1.802
Antigüedad: 20 años
Puntos: 38
Respuesta: contar filas

Puedes utilizar la variable de sistema @@rowcount inmediatamente despues de hacer el select...

Código sql:
Ver original
  1. DECLARE @TotalRows INT
  2.  
  3. SELECT A.DATETIME ,A.IDCLIENT,B.DESCRIPTION,
  4. SUM(CASE WHEN A.IDVAR = 'WhD' THEN A.READVAL ELSE 0 END)
  5. AS CANAL1,
  6. SUM(CASE WHEN A.IDVAR = 'WhR' THEN A.READVAL ELSE 0 END)
  7. AS CANAL2,
  8. SUM(CASE WHEN A.IDVAR = 'F' THEN A.READVAL ELSE 0 END)
  9. AS CANAL3,
  10. SUM(CASE WHEN A.IDVAR = 'VarhD' THEN A.READVAL ELSE 0 END)
  11. AS CANAL4,
  12. SUM(CASE WHEN A.IDVAR = 'VArhR' THEN A.READVAL ELSE 0 END)
  13. AS CANAL5,
  14. SUM(CASE WHEN A.IDVAR = 'FP' THEN A.READVAL ELSE 0 END)
  15. AS CANAL6
  16. FROM READMASS A, TOPOLOGY B
  17. WHERE A.DATETIME >= '2009-01-01 00:00.000' AND B.INSTYPE='Actaris SL7000' AND A.NOINS = B.NOINS AND B.DESCRIPTION LIKE '%TOTA%'
  18. GROUP BY A.DATETIME,A.IDCLIENT,B.DESCRIPTION
  19. ORDER BY A.IDCLIENT,A.DATETIME
  20.  
  21.  
  22. SET @TotalRows  = @@rowcount
  23.  
  24. SELECT @TotalRows

Saludos!
__________________
La sencillez y naturalidad son el supremo y último fin de la cultura...
--
MCTS : SQL Server 2008, .NET Framework 3.5, ASP.NET Applications.
  #3 (permalink)  
Antiguo 06/01/2009, 07:38
 
Fecha de Ingreso: junio-2008
Ubicación: Osorno
Mensajes: 155
Antigüedad: 16 años, 6 meses
Puntos: 3
Respuesta: contar filas

Vale!! master te pasaste gracias, pero tengo otra duda, en mi base de datos hay un campo que se llama NOINS que es un numero de identificacion de un equipo, sobre la misma consulta anterior como hago para que me muestre la cantidad de filas pero por NOINS, es decir que me muestre Segun la consulta que yo hice me diga :
NOINS 1 200 filas
NOINS 2 300 filas
NOINS 3 300 filas

ect.
  #4 (permalink)  
Antiguo 06/01/2009, 10:36
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 17 años, 5 meses
Puntos: 180
Respuesta: contar filas

Consulta la intruccion COMPUTE, tal vez esta sea tu solucion
  #5 (permalink)  
Antiguo 06/01/2009, 12:54
 
Fecha de Ingreso: junio-2008
Ubicación: Osorno
Mensajes: 155
Antigüedad: 16 años, 6 meses
Puntos: 3
Respuesta: contar filas

Gracias iislas me sirvio tu respuesta, pero sorry por ser tan pregunton pero es que ahora tengo otro problema ¿como llamo al campo que me creo con el COMPUTE? por que necesito imprimir ese valor por pantalla desde una pagina en PHP, los demas campos que selecciono en la consulta los se llamar pero este campo no se como se llama, en la consola del SQL server donde ejecuto el codigo me lo muestra como 'ctn' pero al llamarlo desde PHP no me muestra nada.
el codigo donde puse el COMPUTE es el siguiente:
COMPUTE COUNT(A.NOINS) BY A.NOINS

por fa ayuda , juro que no molesto mas

Última edición por proteus8; 07/01/2009 a las 05:16
  #6 (permalink)  
Antiguo 07/01/2009, 13:10
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 17 años, 5 meses
Puntos: 180
Respuesta: contar filas

Bueno, no conozco PHP, espero que alguien que sepa del tema, nos de una luz
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:10.