Foros del Web » Programando para Internet » PHP »

Como contar registros usando PDO

Estas en el tema de Como contar registros usando PDO en el foro de PHP en Foros del Web. con esta instruccion sale: <?php $CanReg = $db->prepare("SELECT * FROM tabla"); $CanReg -> execute(); $CountReg = $CanReg -> fetchAll(); $TRegistros = count($CountReg); echo $TRegistros; //sale ...
  #1 (permalink)  
Antiguo 29/10/2008, 11:18
 
Fecha de Ingreso: mayo-2002
Mensajes: 486
Antigüedad: 21 años, 11 meses
Puntos: 0
Como contar registros usando PDO

con esta instruccion sale:

<?php

$CanReg = $db->prepare("SELECT * FROM tabla");
$CanReg -> execute();
$CountReg = $CanReg -> fetchAll();
$TRegistros = count($CountReg);

echo $TRegistros; //sale bien
?>

sin embargo creo que no es la mas optima. ¿Existira alguna forma mas sencilla de hacer lo mismo?

Gracias por sus ideas
__________________
Sistemass.com - Centro de capacitación profesional
http://www.sistemass.com
  #2 (permalink)  
Antiguo 29/10/2008, 11:34
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Como contar registros usando PDO

Hola kotosh,

Lo mejor es enviar un query del tipo SELECT COUNT(*) FROM tabla.

Saludos.
  #3 (permalink)  
Antiguo 29/10/2008, 11:35
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Como contar registros usando PDO

en un post se manejaban las maneras de optimizar las consultas...

regularmente se cuentan los registros con una sola consulta

Código:
SELECT COUNT(*) FROM `tabla`
espero te sirva, suerte!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #4 (permalink)  
Antiguo 29/10/2008, 11:36
Avatar de masterojitos  
Fecha de Ingreso: julio-2008
Ubicación: Lima Callao Chucuito
Mensajes: 1.931
Antigüedad: 15 años, 8 meses
Puntos: 105
Respuesta: Como contar registros usando PDO

<?php
$CanReg = $db->prepare("SELECT count(*) FROM tabla");
$CanReg -> execute();
echo $CanReg -> sentencia());
?>
__________________
Atte. MasterOjitos :ojotes:
Todo sobre Programación Web
Las ultimas tendencias en Efectos y Recursos Web: MasterOjitos Blog
  #5 (permalink)  
Antiguo 29/10/2008, 11:47
 
Fecha de Ingreso: mayo-2002
Mensajes: 486
Antigüedad: 21 años, 11 meses
Puntos: 0
Respuesta: Como contar registros usando PDO

Me habia olvidado decir que no debe modificarse el query para resolver esto, ya que tiene cierto nivel de complejidad, ademas del hecho q se usa en un grid con opciones de busqueda, ordenamiento etc. por lo cual la solucion a plantear debe pasar fuera de la modificacion del query como lo exije el "select COUNT(*)"


Gracias por las respuestas
__________________
Sistemass.com - Centro de capacitación profesional
http://www.sistemass.com
  #6 (permalink)  
Antiguo 29/10/2008, 11:56
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Como contar registros usando PDO

En ese caso puedes usar rowCount() OJO como bien lo dice el Manual, no es garantizado que te devuelva el número de filas, ya que no todos los drivers lo implementan, lo mejor es lanzar el query para contar.

Saludos.
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:35.