Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/03/2014, 15:24
molinillo
 
Fecha de Ingreso: marzo-2010
Mensajes: 90
Antigüedad: 14 años, 1 mes
Puntos: 2
Consultar de varias tablas.

A ver si me podéis ayudar, he solucionado mi problema mediante dos consultas separadas (que mostraré más abajo) y luego uniéndolas mediante PhP, pero sería mejor para mi tener solo una consulta.

La cosa está así, tengo 2 tablas, "MODELOS" y "SITIOS" , tienen varios campos identicos y varios que no, para el problema solo nos interesan los campos idénticos que son: "id","nombre","activo","destacado"

Contamos con una tercera tabla "IMAGENES", los campos que nos interesan de ella son
"modelo"(guarda la id de su propietario) ,
"ruta",
"clase" ya que un modelo o un sitio pueden tener la misma id al estar en tablas distintas, para identificarlas añadiremos si es modelo o sitio,
"tipo".

Así pues lo que debería hacer la consulta es, coger tanto de "MODELOS" como de "SITIOS" , los destacados y activos con su respectiva imagen de tipo portada.

Y estas son las dos consultas que quiero unir:

Código SQL:
Ver original
  1. SELECT II.ruta AS ruta, SI.id AS id, SI.nombre AS nombre
  2.                         FROM imagenes II
  3.                         INNER JOIN sitios SI ON (II.modelo = SI.id)
  4.                         WHERE  activo ='si' AND destacado >= '".$fecha."' AND II.tipo='portada' AND II.clase='sitio'
  5.  
  6. ------
  7.  
  8. SELECT II.ruta AS ruta, MO.id AS id, MO.nombre AS nombre
  9.                         FROM imagenes II
  10.                         INNER JOIN modelos MO ON (II.modelo = MO.id)
  11.                         WHERE  activo ='si' AND destacado >= '".$fecha."' AND II.tipo='portada' AND II.clase='modelos'
[/CODE]

Gracias de antemano

Última edición por molinillo; 03/03/2014 a las 16:33