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

[SOLUCIONADO] Consulta a partir de dos tablas relacionadas

Estas en el tema de Consulta a partir de dos tablas relacionadas en el foro de Mysql en Foros del Web. Hola amigos, estoy teniendo algunos problemas con un trabajo. No soy un expert pero estoy tratando de aprender y mejorar. Mi tema es lo siguiente: ...
  #1 (permalink)  
Antiguo 02/07/2013, 16:45
 
Fecha de Ingreso: octubre-2011
Mensajes: 17
Antigüedad: 13 años, 1 mes
Puntos: 0
Consulta a partir de dos tablas relacionadas

Hola amigos, estoy teniendo algunos problemas con un trabajo. No soy un expert pero estoy tratando de aprender y mejorar.
Mi tema es lo siguiente:
tengo dos tablas relacionadas por un campo (denominado codigo) con el mismo nombre en ambas tablas.

tabla1
tb1_cod
tb1_campo2
tb1_campo3

tabla2
tb1_cod
tb2_campo2
tb2_campo3

Siendo que un dato registrado en la tabla1 no requiere obligatoriamente un registro en la tabla2, solo en algunos casos especificos.
Creé un archivo php donde trago todos los datos registrados en las dos tablas y mi consulta sql para ello es la siguiente:

Código MySQL:
Ver original
  1. FROM tabla1 as tb1 INNER JOIN tabla2 as tb2 ON tb1.tb1_cod = tb2.tb1_cod
  2. WHERE tb1_cod = ".$_REQUEST['codigo'];

Al abrir mi archivo php funciona perfecto y me trae todos los datos si tengo un registro en ambas tablas, pero el problema esta en aquellos datos que solo requieren un registro en la primera tabla sin necesidad de registrar algo relacionado en la segunda, ahi no me trae ningun dato en mi archivo php, ni siquiera los que he registrado en la tabla1, simplemente queda en blanco.
Si me pueden ayudar por favor, si ven en lo que me estoy equivocando agradeceria muchisimo...

Última edición por gnzsoloyo; 02/07/2013 a las 19:22
  #2 (permalink)  
Antiguo 03/07/2013, 02:41
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 8 meses
Puntos: 574
Respuesta: Consulta a partir de dos tablas relacionadas

Y si pones LEFT JOIN

Código MySQL:
Ver original
  1. FROM tabla1 as tb1 LEFT JOIN tabla2 as tb2 ON tb1.tb1_cod = tb2.tb1_cod
  2. WHERE tb1.tb1_cod = ".$_REQUEST['codigo'];
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #3 (permalink)  
Antiguo 03/07/2013, 05:40
 
Fecha de Ingreso: octubre-2011
Mensajes: 17
Antigüedad: 13 años, 1 mes
Puntos: 0
Respuesta: Consulta a partir de dos tablas relacionadas

Gracias amigo, me funcionó a la perfección. No sabía esa diferencia entre INNER JOIN y LEFT JOIN, lo averigué y ahora ya lo tengo. Otra vez muchas gracias =)

Etiquetas: campo, join, php, registro, relacionadas, select, sql, tabla, tablas
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 02:17.