Foros del Web » Programando para Internet » PHP »

varias consultas

Estas en el tema de varias consultas en el foro de PHP en Foros del Web. hola chicos!! a ver estoy intentando que de una misma tabla se hagan dos consultas diferentes. una que consulte el usuario por si esta baneado ...
  #1 (permalink)  
Antiguo 19/06/2007, 08:15
 
Fecha de Ingreso: junio-2002
Mensajes: 321
Antigüedad: 21 años, 10 meses
Puntos: 3
varias consultas

hola chicos!!
a ver estoy intentando que de una misma tabla se hagan dos consultas diferentes.

una que consulte el usuario por si esta baneado

y la otra (con la misma tabla) por si la ip del usuarioo esta baneado.

en total uso 3 tablas:

usuario
baneos (para IP)
baneos (para id de usuario)

el caso es que quiero resumir la tabla de baneos para que no me ocupe mucho (vamos unificarlo en una pero que haya dos consultas diferentes)

pero no se me ocurre ninguna manera. ¿de que manera podria hacerlo?

un saludo! y gracias.
  #2 (permalink)  
Antiguo 19/06/2007, 08:23
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Re: varias consultas

Explicate mejor, por favor. ¿Qué campos tiene cada tabla? Cuando decís "quiero resumir la tabla de baneos", ¿estás hablando de la BD o de una muestra de información?
  #3 (permalink)  
Antiguo 19/06/2007, 15:41
 
Fecha de Ingreso: junio-2002
Mensajes: 321
Antigüedad: 21 años, 10 meses
Puntos: 3
Re: varias consultas

Las tablas son las siguientes:

Usuarios
  • id_usuario
  • ip_usuario
  • nombre_usuario
  • password_usuario

Baneos
  • id_baneo
  • id_usuario_baneado
  • ip_usuario_baneado
  • mensaje_usuario_baneado

Para saber que el usuario esta baneado tengo que hacer dos consultas diferentes.
  • La primera comprueba que el usuario logueado, esta baneado.
  • La segunda es saber si la IP del usuario esta baneada.
La manera que se me ocurria de momento era hacer solo 2 consultas, pero quiero optimizarlo ya que no me interesa que tarde mucho la carga de la consulta.

¿Ahora esta mejor explicado? :S
  #4 (permalink)  
Antiguo 19/06/2007, 16:24
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: varias consultas

Puedes a lo mejor intentar:
Código:
SELECT
      b.`mensaje_usuario_baneado`
FROM 
     `Baneos` AS b 
INNER JOIN
     `Usuarios` AS u
     ON
          b.`id_usuario_baneado`=u.`id_usuario`
WHERE
     u.`nombre_usuario`='nombre'
AND
     u.`ip_usuario`=b.`ip_usuario_baneado`
AND
     u.`ip_usuario`='ip'
  #5 (permalink)  
Antiguo 19/06/2007, 17:42
 
Fecha de Ingreso: junio-2002
Mensajes: 321
Antigüedad: 21 años, 10 meses
Puntos: 3
Re: varias consultas

yo quiero hacer 2 consultas en la misma tabla :S. los datos de usuario no es problema que se como cojerlos, pero el problema esta en hacer 2 consultas pero de uina manera que no ocupe muchos recursos, ni ancho de banda.
  #6 (permalink)  
Antiguo 19/06/2007, 17:49
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 9 meses
Puntos: 2114
Re: varias consultas

Nateskin, con lo que te ha dejado GatorV puedes hacer un 2en1.
  #7 (permalink)  
Antiguo 19/06/2007, 17:56
 
Fecha de Ingreso: junio-2002
Mensajes: 321
Antigüedad: 21 años, 10 meses
Puntos: 3
Re: varias consultas

pero yo entiendo que el inner join es meter la tabla usuarios dentro de bans no?
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 18:03.