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

Necesito saber como ver un subselect en Mysql/PHP

Estas en el tema de Necesito saber como ver un subselect en Mysql/PHP en el foro de Mysql en Foros del Web. hola a todos. Tengo el siguiente problema. En phpmyadmin ejecuto esta consulta, la cual funciona sin problemas SELECT * , (SELECT count( id_ip ) FROM ...
  #1 (permalink)  
Antiguo 24/07/2006, 08:04
 
Fecha de Ingreso: junio-2006
Mensajes: 80
Antigüedad: 17 años, 9 meses
Puntos: 0
Pregunta Necesito saber como ver un subselect en Mysql/PHP

hola a todos. Tengo el siguiente problema.
En phpmyadmin ejecuto esta consulta, la cual funciona sin problemas

SELECT * , (SELECT count( id_ip )
FROM votos
WHERE votos.id_chiste = chistes.id_chiste) FROM chistes
ORDER BY (SELECT count( id_ip ) FROM votos WHERE votos.id_chiste = chistes.id_chiste) DESC

la cual me muestra

id_chiste | descripcion | (SELECT count( id_ip ) FROM votos WHERE votos.id_chiste = chistes.id_chiste)

y se ve
1 | habia una vez un..... | (y aca deberia mostrar 29, que es el nro de votos

como titulos.

el tema es que dentro del php, para imprimir un campo hago <?php echo $row_rs['id_chiste'];?>. Probe hacerlo en forma similar con el subselect, y no logro que me muestre el resultado del campo..

como puedo hacer para verlo? alguna sugerencia?

muchas gracias
  #2 (permalink)  
Antiguo 24/07/2006, 08:14
Avatar de Lord of freaks  
Fecha de Ingreso: octubre-2004
Ubicación: Madrid
Mensajes: 334
Antigüedad: 19 años, 6 meses
Puntos: 2
Mira creo que sería algo como esto:

Código PHP:
// Cambia la consulta por
SELECT * , (SELECT countid_ip ) as id_ip
FROM votos
WHERE votos
.id_chiste chistes.id_chisteFROM chistes
ORDER BY 
(SELECT countid_ip FROM votos WHERE votos.id_chiste chistes.id_chisteDESC 
Y cuando vayas a pintarlo hazlo asi

Código PHP:
<?php echo $row_rs['id_ip'];?>
__________________
Una vez un elemental de rayos mató una tribu entera de tritones.

¡¡ El sólo quería darse un baño !!

http://www.frikilandia.com

Neither Fu Nor Fa
  #3 (permalink)  
Antiguo 24/07/2006, 08:16
Avatar de bistoco  
Fecha de Ingreso: marzo-2006
Mensajes: 141
Antigüedad: 18 años, 1 mes
Puntos: 0
kizas poniendole un alias al subselect logras lo ke kieres , de la sgte forma :

SELECT * , (SELECT count( id_ip ) AS contador
FROM votos
WHERE votos.id_chiste = chistes.id_chiste) FROM chistes
ORDER BY (SELECT count( id_ip ) FROM votos WHERE votos.id_chiste = chistes.id_chiste) DESC

y despues lo llamas como <?php echo $row_rs['contador'];?>

saludos
__________________
Share what you know...learn what you don't :si:
  #4 (permalink)  
Antiguo 24/07/2006, 08:17
Avatar de Hollman  
Fecha de Ingreso: enero-2003
Ubicación: Bogotá - Colombia
Mensajes: 202
Antigüedad: 21 años, 2 meses
Puntos: 1
Hola...

Para que PHP imprima un campo de un recordset tal como

<?php echo $row_rs['id_chiste'];?> dicho campo debe existir en el query sea como nombre de columna o alias de una (o concatenacion) de columnas del mismo tipo. Entonces sería algo como:

SELECT * , (SELECT count( id_ip )
FROM votos
WHERE votos.id_chiste = chistes.id_chiste) as id_chiste FROM chistes
ORDER BY (SELECT count( id_ip ) FROM votos WHERE votos.id_chiste = chistes.id_chiste) DESC
  #5 (permalink)  
Antiguo 24/07/2006, 08:35
 
Fecha de Ingreso: junio-2006
Mensajes: 80
Antigüedad: 17 años, 9 meses
Puntos: 0
Muchas gracias!!!
asi funciono, asi ya queda para el que lo necesite

<php>
SELECT * , ( SELECT count( id_exposicion_bs_izq )
FROM exposiciones_banner_izq
WHERE exposiciones_banner_izq.id_banner_izq = banner_izq.id_baner ) as id_exposicion_bs_izq FROM banner_izq
ORDER BY ( SELECT count( id_exposicion_bs_izq ) FROM exposiciones_banner_izq WHERE exposiciones_banner_izq.id_banner_izq = banner_izq.id_baner ) desc
</php>
  #6 (permalink)  
Antiguo 24/07/2006, 09:05
 
Fecha de Ingreso: junio-2006
Mensajes: 80
Antigüedad: 17 años, 9 meses
Puntos: 0
Muchas gracias!!!
asi funciono, asi ya queda para el que lo necesite

<php>
SELECT * , ( SELECT count( id_exposicion_bs_izq )
FROM exposiciones_banner_izq
WHERE exposiciones_banner_izq.id_banner_izq = banner_izq.id_baner ) as id_exposicion_bs_izq FROM banner_izq
ORDER BY ( SELECT count( id_exposicion_bs_izq ) FROM exposiciones_banner_izq WHERE exposiciones_banner_izq.id_banner_izq = banner_izq.id_baner ) desc
</php>
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:48.