Relacionar tablas

Iniciado por Xetori, 17 Marzo 2014, 23:29 PM

0 Miembros y 1 Visitante están viendo este tema.

Xetori

Buenas noches, tengo que hacer una consulta para una pagina web y no se como se hace, pues no se utilizar inner join; tengo estas tres tablas:

tbl_local
    id_local
    str_nombrelocal

tbl_zona
    id_zona
    str_nombrezona

tbl_actividad
    id_actividad
    str_descripcion

el tema es relacionar las tres tablas, es decir, tener en la pagina dos listas/menu una que saque las distintas actividades y la otra las zonas, y que aparezcan por pantalla los resultados, teniendo en cuenta que hay locales que pueden realizar diferentes actividades, es para una web tipo a esas de publicidad de locales para buscar sitios para comer, cenar etc.. gracias..

1mpuls0

yo lo haría así.

locales
local_pk
local_nombre

zonas
zona_pk
zona_nombre

actividades
actividad_pk
actividad_nombre

En una zona puede haber muchos locales entonces.

locales
local_pk
zona_fk
local_nombre

Un local puede realizar diferentes actividades entonces...

actividades
actividad_pk
local_fk
actividad_nombre

*Zonas queda igual.

Ejemplo de uso para zonas-locales.

SELECT * FROM zonas INNER JOIN locales ON zonas.zona_pk=locales.zona_fk

Saludos.
abc

Xetori

Gracias Darhius, ya pongo que soy novato en todo esto, una consulta sobre como lo pondrias, que quiere decir pk y fk, pk seria el id supongo y fk?

1mpuls0

PK es abreviatura de "Primary Key" (llave primaria)
FK es abreviatura de "Foreign Key" (llave foranea)
SK es abreviatura de "Super Key" (Super Llave) (comumente la encontraras en tus tickets de compras del supermercado)

Personalmente las utilizo para facilitarme cuando una llave pertenece a una tabla foranea (fk) o propia (pk)

Como verás los nombres de las tablas las coloque en plural, por qué?, simple.. porque guardan zonassss, localidadesss y actividadesss.

Cada quien tiene su estilo, pero es lo que he ido aprendiendo, tu puedes crear tu propio estandar si no quieres seguir alguno.

Olvide mencionar que para el caso de locales y actividades tu _pk y _fk las tienes que establecer como primarias (aunque tu sepas que una es foranea)

No sé en donde subir una imagen, es que estoy en el trabajo xD y tienen bloqueadas muchas páginas
abc

Xetori

ok, gracias, voy a probar aver si lo consigo sacar, si no te importa, si me lio mucho te podria mandar un mail pidiendo ayuda?