Consulta

28/04/2004 - 22:23 por Arturo | Informe spam
Hola a todos necesito que me ayuden en una instrucción de
sql donde esisten 7 tablas de las cuales 6 tienen un
campo de id y el otro de descripcion y la septima es
general contine todos los campos id de las otras tablas
entonces debo consultar esta para que llame los campos de
descripcion de cada una de las 7 tablas, ya intente un
join pero no me da datos, lo que tiene que hacer es que
por ejemplo yo consulto marca=nokia a la tabla marca y me
devuelva el id de esa tabla luego entre a la tabla
septima que contiene ese id y los otros de las otras
tablas y al final en lugar de mostrar los id muestre las
descripciones de esas tablas, por favor ayudenme porque
no me queda esa instruccion
 

Leer las respuestas

#1 ulises
28/04/2004 - 23:09 | Informe spam
No sé si te entendí, pero en todo caso puedes probar con
el siguiente código :

create table tab01 ( clave int, descripcion char(10) )
create table tab02 ( clave int, descripcion char(10) )
create table tab03 ( clave int, descripcion char(10) )
create table tab04 ( clave int, descripcion char(10) )
create table tab05 ( clave int, descripcion char(10) )
create table tab06 ( clave int, descripcion char(10) )
create table tabge ( id int, clave1 int, clave2 int,
clave3 int, clave4 int, clave5 int,
clave6 int)
go
insert into tab01 values ( 1, 'TAB0101' )
insert into tab01 values ( 2, 'TAB0102' )
insert into tab01 values ( 3, 'TAB0103' )
insert into tab02 values ( 1, 'TAB0201' )
insert into tab02 values ( 2, 'TAB0202' )
insert into tab02 values ( 3, 'TAB0203' )
insert into tab03 values ( 1, 'TAB0301' )
insert into tab03 values ( 2, 'TAB0302' )
insert into tab03 values ( 3, 'TAB0403' )
insert into tab04 values ( 1, 'TAB0401' )
insert into tab04 values ( 2, 'TAB0402' )
insert into tab04 values ( 3, 'TAB0403' )
insert into tab05 values ( 1, 'TAB0501' )
insert into tab05 values ( 2, 'TAB0502' )
insert into tab05 values ( 3, 'TAB0503' )
insert into tab06 values ( 1, 'TAB0601' )
insert into tab06 values ( 2, 'TAB0602' )
insert into tab06 values ( 3, 'TAB0603' )
insert into tabge values ( 1, 1,1,1,1,1,1 )
insert into tabge values ( 1, 1,2,3,1,2,3 )
go
select id,
tab01.descripcion,
tab02.descripcion,
tab03.descripcion,
tab04.descripcion,
tab05.descripcion,
tab06.descripcion
from tabge left join tab01 on clave1 = tab01.clave
left join tab02 on clave2 = tab02.clave
left join tab03 on clave3 = tab03.clave
left join tab04 on clave4 = tab04.clave
left join tab05 on clave5 = tab05.clave
left join tab06 on clave6 = tab06.clave

id descripcion descripcion descripcion
descripcion descripcion descripcion
1 TAB0101 TAB0201 TAB0301
TAB0401 TAB0501 TAB0601
1 TAB0101 TAB0202 TAB0403
TAB0401 TAB0502 TAB0603

(2 row(s) affected)

Saludos,
Ulises

Hola a todos necesito que me ayuden en una instrucción de
sql donde esisten 7 tablas de las cuales 6 tienen un
campo de id y el otro de descripcion y la septima es
general contine todos los campos id de las otras tablas
entonces debo consultar esta para que llame los campos de
descripcion de cada una de las 7 tablas, ya intente un
join pero no me da datos, lo que tiene que hacer es que
por ejemplo yo consulto marca=nokia a la tabla marca y me
devuelva el id de esa tabla luego entre a la tabla
septima que contiene ese id y los otros de las otras
tablas y al final en lugar de mostrar los id muestre las
descripciones de esas tablas, por favor ayudenme porque
no me queda esa instruccion
.

Preguntas similares