Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/08/2008, 08:21
Avatar de geq
geq
 
Fecha de Ingreso: agosto-2006
Ubicación: Rosario
Mensajes: 655
Antigüedad: 17 años, 9 meses
Puntos: 22
Exclamación Problema con consulta

Hola a todos, tengo una consulta así:

Código:
SELECT DISTINCT tabla1.*, ciudades.Ciudad, provincias.Provincia, paises.Pais, tabla2.nombre AS 'rnom'
FROM tabla1, zonas, ciudades, provincias, paises, tabla2
WHERE (
tabla1.a >0
AND tabla1.a = tabla2.id
)
OR (
tabla1.b >0
AND (
zonas.id = tabla1.b
AND ciudades.id = zonas.ciudad
AND provincias.id = zonas.provincia
AND paises.id = zonas.pais
)
)
GROUP BY tabla1.id
En donde: tabla1 es una lista donde cada registro puede tener un valor en a que hace referencia a un registro de tabla2 o un valor en b que refiere a un registro en zonas.

Ese registro en zonas a su vez contiene un id de una ciudad, un pais y una provincia que se encuentran en las respectivas tablas.

Yo lo que quiero es traer con esa sola consulta, todos los campos de tabla1 y un campo de tabla2 o ciudad provincia y país, según corresponda.

El problema es que con el group by, el servidor literalmente muere, y sin el group by me trae cada registro de tabla1 tantas veces como registros en tabla2 hay, uno por cada registro de tabla2.

¿Cómo puedo hacer funcionar esa consulta?

Muchas gracias.
Saludos.