Ver Mensaje Individual
  #1 (permalink)  
Antiguo 20/04/2013, 16:08
Avatar de morfasto
morfasto
 
Fecha de Ingreso: julio-2011
Ubicación: Lima
Mensajes: 291
Antigüedad: 12 años, 9 meses
Puntos: 8
Problema con JOIN

Hola que tal?

Estoy teniendo problemas a la hora de hacer un query para mostrar informacion de 2 tablas en 1.

Tabla Negocios:
id
nombre
departamento
provincia
distrito

En esta tabla se guarda la informacion del negocio junto con el id del departamento, provincia y distrito.

Tabla Ubigeo:
id
name
parent_id

En esta tabla esta guardada toda la informacion geografica del pais. Ya sea departamento, provincia o distrito. Se relacionan por medio del parent id.

Ahora, necesito hacer un query que muestre todos los negocios pero en vez de mostrar los ids de sus departamentos provincias y distritos, que se muestren sus nombres.

Me dijeron que use join para solucionar el problema, ya que necesito hacer 1 solo query para mostrar la info.

Query:
Código MySQL:
Ver original
  1. SELECT * FROM negocios as nego JOIN (SELECT name FROM ubigeo WHERE id = nego.departamento) as dpto

Ese es el query que tengo pero me sale error: Unknown column 'nego.departamento' in 'where clause

En resumen, necesito un query que me de:
id - 1
nombre - Negocio1
departamento - Lima
provincia - Lima
distrito - Lima

En vez de:
id - 1
nombre - Negocio1
departamento - 1
provincia - 101
distrito - 1001

Estoy usando MySQL con MyISAM.

Alguna idea?

Muchas gracias!

Última edición por gnzsoloyo; 20/04/2013 a las 16:36