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

Where con All

Estas en el tema de Where con All en el foro de Mysql en Foros del Web. Estimados, el problema que tengo es el siguiente: Quiero conseguir que Where, en algunos casos, muestre todos los valores de la columna consultada. En este ...
  #1 (permalink)  
Antiguo 22/03/2011, 19:36
Avatar de ricardo_tu  
Fecha de Ingreso: noviembre-2010
Ubicación: Mas aca del mas alla
Mensajes: 222
Antigüedad: 13 años, 4 meses
Puntos: 32
Pregunta Where con All

Estimados, el problema que tengo es el siguiente:

Quiero conseguir que Where, en algunos casos, muestre todos los valores de la columna consultada.
En este estilo:
Select * from mi_tabla WHERE provincia='$provincia'

Donde el valor de $provincia viene de un formulario que genera búsquedas especificas según la necesidad del usuario.

Hasta allí no hay problemas, pero si quiero poner la opción ver todas las provincias no sé como hacerlo. Mi mejor intento ha sido:

Código PHP:
$provincia=$_POST['provincia'];
if (
$provincia=="Todas las provincias"$provincia'????????';
$result mysql_query("SELECT * FROM propiedades WHERE provincia='$provincia' 
El valor ???????? es el que quiero aprender para que la búsqueda funcione sobre todos los datos de la columna. Ya probé con * , ALL, ANY . Intenté poner ALL después de un comparador, aunque no supe que comparación hacer.
Les solicito su ayuda
GRACIAS
  #2 (permalink)  
Antiguo 22/03/2011, 19:56
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Where con All

Lo más sencillo es construir dinámicamente la consulta:
Código PHP:
$where "";
$provincia=$_POST['provincia'];

if(
$provincia!="Todas las provincias"
  {
$provincia"WHERE provincia = '".$provincia."'";}
$result mysql_query("SELECT * FROM propiedades ".$where); 
SI la variable es diferente "Todas las provincias", le pone la cadena del WHERE a la variable, de lo contrario sólo contendrá una cadena vacía que no afectará el resto de la consulta.
Quiero que conste que este no es tema de MySQL sino de programación en PHP, y deberías haberlo posteado en otro foro (Foro de PHP).
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 22/03/2011, 21:53
Avatar de ricardo_tu  
Fecha de Ingreso: noviembre-2010
Ubicación: Mas aca del mas alla
Mensajes: 222
Antigüedad: 13 años, 4 meses
Puntos: 32
Información Respuesta: Where con All

Primero las gracias, segundo tal como tenia planteado el problema parecía ser de mysql, ahora gracias a tu respuesta veo que el asunto era con Php.
Pero acá lo relevante es agradecer tu valiosa ayuda, gracias a la nueva estrategia pude construir mi consulta y funciona así:

Código PHP:
$provincia $_POST['provincia']
$where "where";

if(
$provincia!="Todas las provincias"
$where"WHERE provincia ='$provincia' AND";


$result mysql_query("SELECT * FROM mi_tabla $where tipo='$tipo' 
AND destino='$destino' "
); 

Última edición por ricardo_tu; 22/03/2011 a las 23:41

Etiquetas: Ninguno
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 19:31.