Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Go Back   Foros Club Delphi > Otros entornos y lenguajes > PHP
Register FAQ Members List Calendar Guía de estilo Today's Posts

Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old 26/09/2006
papulo's Avatar
papulo papulo is offline
Miembro
 
Join Date: Aug 2005
Location: Lleida - Cataluña - España -Europa - Planeta tierra - Sistema solar - Via Lactea ...
Posts: 542
Poder: 21
papulo Va por buen camino
Contar el numero de elementos de una consulta

Uso firebird, quiero hacer esto que se hace con

PHP Code:
 mysql_num_rows ($Cosulta); 
¿Hay alguna instruccion directa o tengo que hacerlo de forma "artesanal"?

Saludos y hola de nuevo a todos, que he estado de vacaciones unas semanas y se ha notado.

PD: Edito para decir, que lo que hace es contarme el numero de filas que me tiene la consulta que he ejecutado.

Quiero que si me devuelve mas de 20 resultados no muestre mas por pantalla.
__________________
"El aprendizaje potencia la intuición"
Yo mismo, en un momento de inspiración. v2.0
Reply With Quote
  #2  
Old 27/09/2006
papulo's Avatar
papulo papulo is offline
Miembro
 
Join Date: Aug 2005
Location: Lleida - Cataluña - España -Europa - Planeta tierra - Sistema solar - Via Lactea ...
Posts: 542
Poder: 21
papulo Va por buen camino
AAAARRIBAAAAA!!

Necesito ayuda,jops.

De los masters del universo (del PHP ...*cof! *cof! Dec! *cof!) que por aquí se que hay.


PD:En realidad de todos, pero cuando pienso en PHP, me viene Dec a la cabeza.
__________________
"El aprendizaje potencia la intuición"
Yo mismo, en un momento de inspiración. v2.0
Reply With Quote
  #3  
Old 27/09/2006
vtdeleon's Avatar
vtdeleon vtdeleon is offline
Miembro
 
Join Date: Apr 2004
Location: RD & USA
Posts: 3,236
Poder: 26
vtdeleon Va por buen camino
Saludos

No estoy muy pulido, pero prueba con Ibase_fetch_row().
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
Reply With Quote
  #4  
Old 27/09/2006
Casimiro Noteví's Avatar
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Join Date: Sep 2004
Location: En algún lugar.
Posts: 32,669
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Si la consulta es de varios campos de una tabla y condicionada con where y lo que sea, entonces no podrás hacerlo.
Si son todos los campos, lo haces con un simple count.
Esa sentencia (mysql_num_rows ($Cosulta);) que indicas creo que lo que hace es ir al último registro para poder saber los que hay, es como si hicieras el select, luego haces un .last para ejecutar el recordcount y seguidamente vas al principio .first
Reply With Quote
  #5  
Old 27/09/2006
roman's Avatar
roman roman is offline
Moderador
 
Join Date: May 2003
Location: Ciudad de México
Posts: 20,269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
MySql tiene dos formas de mandar los resultados al cliente: de uno a uno o en bonche todos juntos. Hasta donde tengo entendido, PHP usa la segunda forma, de manera que siempre se sabe cuántos registros hay y por ello puede usarse mysql_num_rows. Si en IB noexiste tal función, me supongo que es porque sólo se mandan los resultados de uno a uno y por ello no puede saberse cuántos hay sino hasta que se han recorrido todos.

No entiendo muy bien porque Casimiro menciona que no se puede usarse count si hay una cláusula where o varios campos. Pienso que se puede saber la cantidad de registros haciendo una consulta COUNT previa con las mismas condiciones que la consulta original. Si bien es una consulta extra, normalmente debe ser bastante rápida y tratándse de un sólo dato el envío al cliente es muy rápido también así que imagino que casi no se notaría.

// Saludos
Reply With Quote
  #6  
Old 02/10/2006
papulo's Avatar
papulo papulo is offline
Miembro
 
Join Date: Aug 2005
Location: Lleida - Cataluña - España -Europa - Planeta tierra - Sistema solar - Via Lactea ...
Posts: 542
Poder: 21
papulo Va por buen camino
Al final, el tema era saber el numero de resultados que me devolvía la consulta realizada y si pasaba de 30, dejar de mostrarlos en pantalla, por lo que en la condicion
PHP Code:
while (($fila ibase_fetch_object ($consulta)) or ($max_request<=30))
{

y arreando, cuando pasa de 30 registros deja de mostrarlos y directamente muestra un mensaje.

Gracias por la ayuda, la idea del count se me había pasado por la cabeza, me parecía la mas lógica aunque no se si la mas eficiente.
__________________
"El aprendizaje potencia la intuición"
Yo mismo, en un momento de inspiración. v2.0
Reply With Quote
  #7  
Old 02/10/2006
Casimiro Noteví's Avatar
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Join Date: Sep 2004
Location: En algún lugar.
Posts: 32,669
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Quote:
Originally Posted by roman
[...]
No entiendo muy bien porque Casimiro menciona que no se puede usarse count si hay una cláusula where o varios campos. Pienso que se puede saber la cantidad de registros haciendo una consulta COUNT previa con las mismas condiciones que la consulta original. Si bien es una consulta extra, normalmente debe ser bastante rápida y tratándse de un sólo dato el envío al cliente es muy rápido también así que imagino que casi no se notaría.
// Saludos
Sólo quería decir que si tiene ya un select "normal" con sus campos y condicionantes normales, no puede añadirle al mismo el count para hacerlo de una sóla vez.
No sé... por ejemplo:
Code:
select tar.*, per.codigoregistro
from tbTareas tar
inner join tbPersonal per on (per.codigo=tar.dependiente)
where tar.Codigo= 13
order by tar.fechainicio
Ahí no puedes añadir el count, tendría que ejecutar una sentencia adicional para contarlos.
Esto es suponiendo que yo hubiese entendido bien la pregunta.
Reply With Quote
  #8  
Old 02/10/2006
dec's Avatar
dec dec is offline
Moderador
 
Join Date: Dec 2004
Location: Alcobendas, Madrid, España
Posts: 13,142
Poder: 36
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Quote:
Originally Posted by Papulo
De los masters del universo (del PHP ...*cof! *cof! Dec! *cof!) que por aquí se que hay.

PD:En realidad de todos, pero cuando pienso en PHP, me viene Dec a la cabeza.
__________________
David Esperalta
www.decsoftutils.com
Reply With Quote
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
IDE: .BPG con más de 100 elementos (peta!!) Neftali [Germán.Estévez] Varios 2 03/06/2005 17:25
Alinear elementos de un ListBox Tecnic2 OOP 2 05/01/2005 17:02
Limitar el numero de Registro de una Consulta en FireBird 1.5 Abel Garcia Firebird e Interbase 3 08/12/2004 23:57
Elementos no imprimibles Igna Impresión 4 12/01/2004 17:53
Buscado elementos xerkan Firebird e Interbase 3 15/10/2003 19:50


All times are GMT +2. The time now is 20:11.


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