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

Varias consultas unidas, AYUDA !!

Estas en el tema de Varias consultas unidas, AYUDA !! en el foro de Mysql en Foros del Web. Hola buenos dias y muchas gracias de antemano, ya que me han salvado el trasero alguna vez desde aqui y eso se agradece. Tengo un ...
  #1 (permalink)  
Antiguo 28/08/2009, 04:26
 
Fecha de Ingreso: abril-2009
Mensajes: 64
Antigüedad: 15 años
Puntos: 0
Varias consultas unidas, AYUDA !!

Hola buenos dias y muchas gracias de antemano, ya que me han salvado el trasero alguna vez desde aqui y eso se agradece.
Tengo un problema y estoy totalmente atascado.
Tengo una pagina de resultados de un buscador, cuya consulta final es:

$query = select *, productos.id as idproducto from productos where id_categoria=1 and precio<250000 and bath=1 and habs=1 group by productos.id order by productos.precio asc .

Ahora bien, necesito mostrar en los elementos resultados una seri de campos a parte de los filtrados por esa consulta y seria :
$query = SELECT *, productos.id as proid, provincias.provincia as provincia_r FROM `productos` inner join municipios on productos.id_municipio = municipios.id inner join provincias on municipios.provincia = provincias.id inner join prop_clas on productos.id_categoria = prop_clas.id.
No tengo ni idea de como unir las dos consultas, por favor e sun proyecto que tengo que entregar hoy y mi s jefes me estan presionando mucho, pese a que dije que no sabia hacerlo.
Muchas gracias por vuestra atencion y ayuda,
saludos.

PD: script de los resultados --------------

$query = "select *";

if (array_key_exists("municipio",$_GET)) {
$query .= ", productos.id as idproducto ";
}

$query .= "from productos";

$parametros=0;

if (array_key_exists("provincia",$_GET)) {
$provincia=$_GET["provincia"];
if ($provincia!=0) {
$parametros++;
$query = $query . ",municipios where id_municipio = municipios.id and municipios.zona=$provincia ";
}
}

if (array_key_exists("municipio",$_GET)) {
if ($parametros==0) {
$palabra = "where";
} else {
$palabra = "and";
}
$municipio=$_GET["municipio"];
if ($municipio!=0) {
$parametros++;
$query = $query . " $palabra id_municipio=$municipio ";
}
}

if (array_key_exists("tipo",$_GET)) {
if ($parametros==0) {
$palabra = "where";
} else {
$palabra = "and";
}
$tipo=$_GET["tipo"];
if ($tipo!=0) {
$parametros++;
$query = $query . " $palabra id_categoria=$tipo ";
}
}

if (array_key_exists("precio",$_GET)) {
if ($parametros==0) {
$palabra = "where";
} else {
$palabra = "and";
}
$precio=$_GET["precio"];
if ($precio!=0) {
$parametros++;
$query = $query . " $palabra precio<$precio";
}
}
if (array_key_exists("bath",$_GET)) {
if ($parametros==0) {
$palabra = "where";
} else {
$palabra = "and";
}
$bath=$_GET["bath"];
if ($bath!='*_*') {
$parametros++;
$query = $query . " $palabra bath=$bath";
}
}

if (array_key_exists("habs",$_GET)) {
if ($parametros==0) {
$palabra = "where";
} else {
$palabra = "and";
}
$habs=$_GET["habs"];
if ($habs!='_*_') {
$parametros++;
$query = $query . " $palabra habs=$habs";
}
}


$query = $query . " group by productos.id order by productos.precio asc"; (esta es la consulta final de los resultados que he puesto arriba, pero arriba esta con los elementos ya filtrados, aqui pinto el codigo par aque lo veais mas claro como esta construida la consulta).
  #2 (permalink)  
Antiguo 28/08/2009, 07:33
 
Fecha de Ingreso: agosto-2009
Ubicación: Jalisco,Mexico
Mensajes: 28
Antigüedad: 14 años, 8 meses
Puntos: 2
Respuesta: Varias consultas unidas, AYUDA !!

No se bien lo que quieres hacer pero prueba esta consulta:

$query = SELECT *, productos.id as proid, provincias.provincia as provincia_r FROM productos inner join municipios on productos.id_municipio = municipios.id inner join provincias on municipios.provincia = provincias.id inner join prop_clas on productos.id_categoria = prop_clas.id where productos.id_categoria=1 and productos.precio<250000 and productos.bath=1 and productos.habs=1 group by proid order by productos.precio asc .
  #3 (permalink)  
Antiguo 28/08/2009, 08:09
Avatar de intiweb  
Fecha de Ingreso: mayo-2009
Ubicación: Capital Federal
Mensajes: 363
Antigüedad: 14 años, 11 meses
Puntos: 5
Respuesta: Varias consultas unidas, AYUDA !!

no entiendo mucho pero podes hacer dos consultas diferentes y almacenar los datos en variables para poder manejarlos mejor
ejemplo:
query select* from user username where username = "laouen"
query select* from casas casa where casa = "2"
en dis variable .
$username = username (de la base de datos)
$casa = casa (de la base de datos)
  #4 (permalink)  
Antiguo 28/08/2009, 08:59
 
Fecha de Ingreso: abril-2009
Mensajes: 64
Antigüedad: 15 años
Puntos: 0
Respuesta: Varias consultas unidas, AYUDA !!

Gracias a los dos, me ayudaron mucho con sus respuestas, sobre todo intiweb.
Ya lo resolvi, gracias, sin vuestra ayuda no hubiera sido posible.
  #5 (permalink)  
Antiguo 29/08/2009, 20:55
 
Fecha de Ingreso: agosto-2009
Mensajes: 9
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: Varias consultas unidas, AYUDA !!

Saludos,

Solo el comentario, en tu script usas directamente $_GET y lo concatenas con la sentencia SQL, este podria ser un punto donde podrian atacarte para inyeccion de SQL...

Checa tus validaciones!!!
Buen dia...
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 06:32.