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

Duda

Estas en el tema de Duda en el foro de Bases de Datos General en Foros del Web. La cosa es que tengo dos tablas cuyo código de creación es el siguiente: Cita: Post: CREATE TABLE `post` ( `idpost` int(6) unsigned NOT NULL ...
  #1 (permalink)  
Antiguo 04/06/2004, 08:57
Avatar de Reynier  
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 21 años, 5 meses
Puntos: 1
Duda

La cosa es que tengo dos tablas cuyo código de creación es el siguiente:
Cita:
Post:
CREATE TABLE `post` (
`idpost` int(6) unsigned NOT NULL auto_increment,
`idtopic` int(6) default NULL,
`idforo` int(6) default NULL,
`iduser` int(6) default NULL,
`type` tinyint(1) NOT NULL default '0',
`subject` varchar(200) NOT NULL default '',
`text` text NOT NULL,
`date` datetime default NULL,
PRIMARY KEY (`idpost`)
) TYPE=MyISAM COMMENT='Post for Topics';

Foro:
CREATE TABLE `foros` (
`idforo` int(6) unsigned NOT NULL auto_increment,
`idcat` int(6) default NULL,
`title` varchar(50) NOT NULL default '',
`description` varchar(255) NOT NULL default '',
`presentation_order` tinyint(2) default NULL,
`active` tinyint(1) NOT NULL default '0',
PRIMARY KEY (`idforo`)
) TYPE=MyISAM COMMENT='Foros';
lo que quiero es contar todos los POST que pertenecen a un foro en especifico para saber la cantidad de temas actuales disponibles en el mismo. He hecho esta consulta:
Código PHP:
$query "SELECT f.*,COUNT(p.idpost) AS cant_themes FROM foros f, post p WHERE f.idforo=p.idforo AND f.idcat='".$idcat."' AND f.active<>0 GROUP BY (p.idforo) ORDER BY f.idforo"
pero cuando la tabla POST esta vacía, es decir, no contiene datos no me retorna nada y yo quiero que me devuelva 0 Post. ¿Cómo lo hago?
Salu2
__________________
Ing. Reynier Pérez Mira

Última edición por Reynier; 04/06/2004 a las 08:58
  #2 (permalink)  
Antiguo 06/06/2004, 09:12
 
Fecha de Ingreso: diciembre-2003
Mensajes: 213
Antigüedad: 20 años, 5 meses
Puntos: 0
yo me olvidaria de hacer COUNT y rollos de esos. Es decir, simplificas la consulta SQL y a cambio complicas un poquito el php. algo como esto:

$query= "select post.idpost from post, foros where foros.idforo=post.idforo
and f.idcat='".$idcat."'
and f.active<>0; ";
$ressultado=mysql_fetch_array(......);
$NumeroTemas=mysql_num_rows($resultado);

La funcion mysql_num_rows te devuelve el numero de tuplas que tiene el resultado de la consulta.

Espero que te sirva de algo.
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 07:09.