Contar el numero de elementos de una consulta
Uso firebird, quiero hacer esto que se hace con
Código PHP:
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. |
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. |
Saludos
No estoy muy pulido, pero prueba con Ibase_fetch_row(). |
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 |
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 |
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
Código PHP:
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. |
Cita:
No sé... por ejemplo: Código:
select tar.*, per.codigoregistro Esto es suponiendo que yo hubiese entendido bien la pregunta. :) |
Hola,
Cita:
|
La franja horaria es GMT +2. Ahora son las 00:34:12. |
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