Ver Mensaje Individual
  #7 (permalink)  
Antiguo 01/12/2006, 08:59
Avatar de Gabo77
Gabo77
 
Fecha de Ingreso: noviembre-2006
Mensajes: 381
Antigüedad: 18 años, 1 mes
Puntos: 6
PequeñoMauro tiene razon, solo algunas observaciones:
En la consulta pones Ofertas.*, esto no es conveniente, y menos en un UNION mejor identifica los campos que vas a necesitar de la tabla Ofertas, por otro lado la segunda consulta del union:

Código:
SELECT Ofertas.*, Empresas.Nombre 
FROM Ofertas 
INNER JOIN Contratacion_Destinos 
ON Ofertas.ID_DESTINO = Contratacion_Destinos.ID_DESTINO 
INNER JOIN Contratacion_Servicios 
ON Contratacion_Destinos.ID_PARAMETRO = Contratacion_Servicios.ID_PARAMETRO 
INNER JOIN Empresas 
ON Ofertas.ID_Empresa = Empresas.ID_EMPRESA 
WHERE (ofertas.tipo_oferta = 1) and  (Contratacion_Destinos.Activo = 1) 
AND (UPPER(Contratacion_Servicios.Parametro) = 'OFERTADESTACADAS' OR UPPER(Contratacion_Servicios.Parametro) = 'OFERTADESTACADAM') 
AND (Contratacion_Destinos.FechaProrroga > GETDATE()) 
ORDER BY Ofertas.Fecha DESC
haces un Join contra la tabla Contratacion_Servicios, y no muestras info de esta, te aconsejo que evites al máximo las clausulas Joins ya que son muy pesadas para el servidor por que utilizan tablas temnporales para evaluar el conjunto de resultados, mejor utiliza un EXISTS y veras la mejora en el rendimiento de tu consulta

Saludos!