|
#1
|
|||
|
|||
Unir varias tablas usando los campos requeridos
Hola! Disculpen queria unir 5 tablas en 1 sola que es del tipo de tooodas las 5 tablas con casi todos sus campos. La tabla que asocia esas tablas y tiene las llaves es la de "zgdctt_panel" y le hago un inner join, si busca y encuentra los datos pero solamente me trae los campos que tiene la tabla "zgdctt_panel" y no me trae los otros campos que quiero de las otras 5 tablas.. Como le puedo hacer??
Este es mi codigo: SELECT zgdctt_Leader~fname zgdctt_Leader~lname zgdctt_Leader~ACTIVE ZGDCTT_LEADER~IDLEADER zgdctt_Member~fname zgdctt_Member~lname zgdctt_Member~FACTLOCATION zgdctt_Member~ACTIVE ZGDCTT_MEMBER~IDMEMBER ZGDCTT_ASSIGN~IDASSIGN zgdctt_dvlpmnt~DEVTYP zgdctt_dvlpmnt~DESC_DVLPMNT zgdctt_rqrmnt~DESCRQRMNT ZGDCTT_RQRMNT~IDRQRMNT ZgDCTT_PANEL~PANELDATE ZGDCTT_PANEL~PANELDATE2 FROM ZgDCTT_PANEL inner join ZGDCTT_MEMBER on ZgDCTT_PANEL~IDMEMBER = ZGDCTT_MEMBER~IDMEMBER inner join ZGDCTT_LEADER on ZGDCTT_LEADER~IDLEADER = ZgDCTT_PANEL~IDLeader inner join ZGDCTT_RQRMNT on ZGDCTT_RQRMNT~IDRQRMNT = ZgDCTT_PANEL~IDRQRMNT inner join ZGDCTT_ASSIGN on ZGDCTT_ASSIGN~IDASSIGN = ZgDCTT_PANEL~IDASSIGN inner join ZGDCTT_dvlpmnt on ZGDCTT_dvlpmnt~DEVTYP = ZgDCTT_PANEL~DEVTYP INTO CORRESPONDING FIELDS OF TABLE TG_bseg ** TABLA = VALOR DEL CAMPO *INTO CORRESPONDING FIELDS OF TABLE TG_bseg WHERE ZgDCTT_PANEL~IDLEADER = ZGDCTT_LEADER-IDLEADER OR ZGDCTT_PANEL~IDMEMBER = ZGDCTT_MEMBER-IDMEMBER OR ZgDCTT_PANEL~IDASSIGN = ZGDCTT_ASSIGN-IDASSIGN OR ZgDCTT_PANEL~DEVTYP = ZGDCTT_DVLPMNT-DEVTYP OR ZgDCTT_PANEL~IDRQRMNT = ZGDCTT_RQRMNT-IDRQRMNT OR ZgDCTT_PANEL~PANELDATE = ZGDCTT_PANEL-PANELDATE. MOVE-CORRESPONDING ZGDCTT_PANEL TO TG_BSEG. COLLECT TG_BSEG. Muchas gracias!!! Atte Moni |
#2
|
|||
|
|||
Estimado:
No ha intentado en hacer Select * From Tabla Where Condición Y luego hacer un For All Entries para las siguientes tablas, y al final mover los registros a una super tabla. Saludos. |
#3
|
|||
|
|||
Prueba a poner al reves el "on" a estas dos tablas:
inner join ZGDCTT_MEMBER on ZgDCTT_PANEL~IDMEMBER = ZGDCTT_MEMBER~IDMEMBER |
#4
|
|||
|
|||
Gracias por los consejos, pero el problema esque no me aparecen todos los campos que quiero solamente los campos de la tabla panel (la que asocia a las otras 5) como le puedo hacer para que me traiga los demas campos de las otras tablas que corespondan a su id. (el id de cada tabla esta en el panel y esos son los que si me trae)
por ejemplo, Me trae el numero del miembro pero yo quisiera que tambien me trajera su nombre y apellido gracias!!! |
#5
|
|||
|
|||
aparentemente el join esta bien, la única explicacion que le veo es que los campos que seleccionas no se llamen igual que los campos de la tabla interna a la que quieres volcarlos ( esto es necesario para el intocorresponding) si es el caso prueba a hacer un selecto into table, si los campos que seleccionas se corresponden en el tipo, longitud y orden con los de la tabla interna o si no es así hacindo un :
select campo1 campo2 .... campon into (campo1_bis, campo2_bis... campon_bis) |
#6
|
|||
|
|||
Gracias, Ya Vi Que Los Nombres De Los Campos De Las Tablas No Concordaban Con Los De Mi Tabla Interna, Lo Corregi En El Select Con Un As Y Un Into Table...
|
Herramientas | Buscar en Tema |
Desplegado | |
|
|