Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Unir tablas

Estas en el tema de Unir tablas en el foro de Mysql en Foros del Web. hola me pueden ayudar, tengo 3 tablas ; las cuales quiero mandar llamar algunos de sus campos a traves de una consulta. mis tablas egw_tracker(tr_id,tr_creator, ...
  #1 (permalink)  
Antiguo 21/04/2010, 11:40
 
Fecha de Ingreso: abril-2010
Mensajes: 21
Antigüedad: 14 años
Puntos: 1
Unir tablas

hola me pueden ayudar, tengo 3 tablas ; las cuales quiero mandar llamar algunos de sus campos a traves de una consulta.

mis tablas
egw_tracker(tr_id,tr_creator, tr_created, tr, priority, tr_modifier, tr_modified, tr_closed, tr_completion),

egw_accounts, (account_id, account_lid)

egw_categories(cat_id,cat_name)

1.- Solicito saber la sintaxis de como las puedo enlazar las 3.

2.-Solicito saber como puedo atravez de id de la tabla, me muestre la columna con el nombre por ejemplo:

En la tabla egw_tracker, uno de sus campos incluidos es (cat_id), este campo pertenece a la tabla egw_categories, y lo que quiero a travez de la consulta es que me muestre el nombre de la categoria (cat_name) y no el id, pero que me lo muestre de acuerdo a los registros que tengo en la tabla egw_tracker donde me indique cada registro y en vez del (cat_id) me muestre el nombre de esa categoria (cat_name); esto mismo lo quiero para la columna tr_creator que en esta tabla solo muestra el id (account_id), que se encuentra en egw_accounts, y yo quiero ver el nombre del creador, que en este caso es (account_lid).

espero me halla dado a enteder espero aclaraciónes ya que no tengo idea de como poder enlazarlas. solo he hecho consultas muy simples

esto es lo que llevo y lo demas nose como relacionarlo

SELECT DISTINCT egw_tracker.tr_id, egw_tracker.tr_summary, egw_tracker.tr_creator, egw_accounts.account_lid, egw_tracker.tr_priority FROM egw_tracker, egw_accounts WHERE egw_tracker.tr_creator=egw_accounts.account_id;

Última edición por estrella99; 21/04/2010 a las 14:21
  #2 (permalink)  
Antiguo 21/04/2010, 23:55
 
Fecha de Ingreso: agosto-2005
Mensajes: 7
Antigüedad: 18 años, 8 meses
Puntos: 0
Respuesta: Unir tablas

Para poder enlazar tablas, estas deben tener campos comunes que permitan el enlace.- Sin mucho curiosear, ninguno de los campos de egw_categories esta en ninguna de las tablas.- Asi, no podras enlazarlas

Saludos
dafyrza
  #3 (permalink)  
Antiguo 22/04/2010, 12:36
 
Fecha de Ingreso: abril-2010
Mensajes: 21
Antigüedad: 14 años
Puntos: 1
Respuesta: Unir tablas

No lo nombre pero si hay hay el campo cat_id en egw_tracker, bueno para irnos al grano ya logre hacer varias relaciones que queria hacer, te pongo el codigo:

Código:
SELECT t.tr_id, t.tr_tracker, t.tr_summary, ca.cat_name, acc.account_lid, FROM_UNIXTIME(t.tr_created),asi.tr_assigned, t.tr_priority, t.tr_modifier, FROM_UNIXTIME(t.tr_modified), FROM_UNIXTIME(t.tr_closed), t.tr_completion

FROM egw_tracker AS t, egw_categories AS ca, egw_accounts AS acc, egw_tracker_assignee AS asi

WHERE ca.cat_id=t.cat_id AND t.tr_creator=acc.account_id AND asi.tr_id=t.tr_id
;

me muestra(perdon el acomodo):

Textos completos
tr_id; tr_tracker; tr_summary cat_name; account_lid; FROM_UNIXTIME(t.tr_created); tr_assigned; tr_priority; tr_modifier; FROM_UNIXTIME(t.tr_modified); FROM_UNIXTIME(t.tr_closed); tr_completion;
1; 7; Errores; Corrección de error; Brenda; 2009-03-04 16:03:05; 6; 9; 7; 2009-03-23 13:28:30; NULL; 100;

Ahora lo que me falta es en la tabla tr_tracker, tr_assigned, tr_modifier, me sale solo los id de los usuarios, y quiero el nombre, pero como lo puedo relacionar y que me muestre el nombre, si ya lo hice con t.tr_creator=acc.account_id y me los muestra en account_lid.

Última edición por estrella99; 22/04/2010 a las 12:45

Etiquetas: tablas, unir
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:33.