Foros del Web » Programando para Internet » PHP »

Usar WHERE para 2 valores..

Estas en el tema de Usar WHERE para 2 valores.. en el foro de PHP en Foros del Web. Hola a todos, he abusado un poco del foro ultimamente, pero no tengo otro lado donde recurrir xDu.. Gracias por todo ;D Esta vez quiero ...
  #1 (permalink)  
Antiguo 20/12/2005, 18:57
 
Fecha de Ingreso: mayo-2004
Ubicación: Santiago
Mensajes: 122
Antigüedad: 13 años, 7 meses
Puntos: 0
Usar WHERE para 2 valores..

Hola a todos, he abusado un poco del foro ultimamente, pero no tengo otro lado donde recurrir xDu.. Gracias por todo ;D
Esta vez quiero usar un WHERE que lea un campo y saque las filas que coincidan con dos valores..
Pensé en usar BETWEEN pero no funcionó, buscando por la red encontré que podía usar WHERE campo IN (valor1,valor2) pero tampoco funcionó..

Como hago para sacar las filas que tengan como valor 1 o 2 en el campo user_rank?
SELECT username, user_password, user_rank FROM users WHERE user_rank ?????


Gracias de antemano..
__________________
http://www.xtasy.cl
  #2 (permalink)  
Antiguo 20/12/2005, 19:50
Avatar de Quest  
Fecha de Ingreso: diciembre-2002
Ubicación: Santiago
Mensajes: 129
Antigüedad: 15 años
Puntos: 2
$sql = "select * from users where user_rank = 1 or user_rank = 2";
__________________
http://victorsanmartin.com
Web Developer
http://www.guiasitios.cl
  #3 (permalink)  
Antiguo 20/12/2005, 21:02
Avatar de gonzalezmfrank  
Fecha de Ingreso: julio-2005
Ubicación: Maracaibo - Venezuela
Mensajes: 266
Antigüedad: 12 años, 4 meses
Puntos: 0
Prueba......

Código PHP:
$sql "SELECT * FROM users WHERE user_rank IN ('1','2')"
Claro está si los valores de 'user_rank' son 'dinamicos' tendrás que ejecutar una sentencia previa parecida a

Código PHP:
$filtro $filtro "user_rank IN (";
for(
$b=1$b<=$nro_opciones$b++) {
       
$filtro $filtro ."'"$variable "',";
}
$filtro substr($filtro,0,-1).") "
Espero te sirva....

Ojo. usé lo anterior cpn fpdf pero tuve que obviar las comillas simpĺes (') para que funcionara con la clase

Frank
  #4 (permalink)  
Antiguo 20/12/2005, 21:24
Avatar de FuLaNo_  
Fecha de Ingreso: mayo-2003
Ubicación: Don Torcuato, Buenos Aires, Argentina
Mensajes: 1.250
Antigüedad: 14 años, 6 meses
Puntos: 2
Cita:
Como hago para sacar las filas que tengan como valor 1 o 2 en el campo user_rank?
Ya te lo ha respondido Quest:

Código PHP:
$sql "SELECT * FROM `users` WHERE `user_rank` = 1 OR `user_rank` = 2"
Si quisieras sacar los que tienen valor 1 Y 2 usas AND en lugar de OR
__________________
I Love Programming...
  #5 (permalink)  
Antiguo 22/12/2005, 09:04
 
Fecha de Ingreso: mayo-2004
Ubicación: Santiago
Mensajes: 122
Antigüedad: 13 años, 7 meses
Puntos: 0
Hola a todos, gracias por leerme y responder ;D.. hice lo que me dijieron con OR, pero el problema es que solo identifico a los usuarios con user_rank = '2', y si le quito el OR user_rank = '2', me identifica correctamente a los que tienen 1 como valor..
¿Qué puede ser?
Gracias otra vez.
__________________
http://www.xtasy.cl
  #6 (permalink)  
Antiguo 22/12/2005, 11:02
 
Fecha de Ingreso: mayo-2004
Mensajes: 393
Antigüedad: 13 años, 7 meses
Puntos: 0
Hola:

Casi seguro que es un problema de comillas.
  #7 (permalink)  
Antiguo 22/12/2005, 11:09
 
Fecha de Ingreso: mayo-2004
Ubicación: Santiago
Mensajes: 122
Antigüedad: 13 años, 7 meses
Puntos: 0
Hola javifo, no es un problema de comillas, ya intenté con los ', con `, con ", etc..
__________________
http://www.xtasy.cl
  #8 (permalink)  
Antiguo 22/12/2005, 11:12
 
Fecha de Ingreso: mayo-2004
Mensajes: 393
Antigüedad: 13 años, 7 meses
Puntos: 0
Lo idealsería que pusieras el código que usas para la consulta, porque lo que quieres hacer es de lo más sencillo y seguro que tienes un problema muy simple de resolver.

Saludos.
  #9 (permalink)  
Antiguo 22/12/2005, 11:26
 
Fecha de Ingreso: agosto-2004
Mensajes: 118
Antigüedad: 13 años, 4 meses
Puntos: 1
Intenta algo como esto
Código PHP:
$sql "SELECT * FROM users WHERE ((user_rank = '1') OR (user_rank = '2'))"
  #10 (permalink)  
Antiguo 23/12/2005, 19:23
 
Fecha de Ingreso: mayo-2004
Ubicación: Santiago
Mensajes: 122
Antigüedad: 13 años, 7 meses
Puntos: 0
Gracias por sus respuestas, lo que estoy haciendo es
Código PHP:
$sql "SELECT username, user_password, user_rank FROM phpbb_users WHERE `user_rank` = 1 OR `user_rank` = 2"
Estoy haciendo que mi sistema de admins verifique los datos de usuario a partir de los administradores y moderadores de phpBB
__________________
http://www.xtasy.cl
  #11 (permalink)  
Antiguo 26/12/2005, 11:10
 
Fecha de Ingreso: mayo-2004
Ubicación: Santiago
Mensajes: 122
Antigüedad: 13 años, 7 meses
Puntos: 0
*UPs*......
__________________
http://www.xtasy.cl
  #12 (permalink)  
Antiguo 02/01/2006, 15:18
Avatar de vivinet  
Fecha de Ingreso: diciembre-2005
Mensajes: 4
Antigüedad: 12 años
Puntos: 0
No probaste de esta manera???
Código PHP:
$sql "SELECT username, user_password, user_rank 
FROM phpbb_users WHERE user_rank = '1' OR user_rank = '2' "

  #13 (permalink)  
Antiguo 02/01/2006, 20:50
Avatar de Panino5001
Moderatroll
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.062
Antigüedad: 13 años, 6 meses
Puntos: 775
Si lo que busca es que coincida con los dos valores debe usar and en lugar de or
  #14 (permalink)  
Antiguo 02/01/2006, 20:58
Avatar de vevni  
Fecha de Ingreso: julio-2005
Ubicación: cancun mexico
Mensajes: 598
Antigüedad: 12 años, 4 meses
Puntos: 3
Exclamación

que tipo de dato tienes en la base de datos, es entero?????
  #15 (permalink)  
Antiguo 03/01/2006, 06:31
Avatar de jerkan  
Fecha de Ingreso: septiembre-2005
Mensajes: 1.607
Antigüedad: 12 años, 2 meses
Puntos: 18
Prueba a poner las variables sin comillas y los valores entre comillados:
Ej: variable = '1'

Cita:
Iniciado por Panino5001
Si lo que busca es que coincida con los dos valores debe usar and en lugar de or
Eso no tiene ningun sentido.
  #16 (permalink)  
Antiguo 03/01/2006, 06:43
Avatar de Panino5001
Moderatroll
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.062
Antigüedad: 13 años, 6 meses
Puntos: 775
Tienes razón: leí mal el post.
  #17 (permalink)  
Antiguo 12/01/2006, 17:49
 
Fecha de Ingreso: mayo-2004
Ubicación: Santiago
Mensajes: 122
Antigüedad: 13 años, 7 meses
Puntos: 0
Hola a todos, gracias por sus respuestas, en este momento no me encuentro en casa, he estado fuera desde el último post, apenas llegue les cuento ;D
__________________
http://www.xtasy.cl
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 10:14.