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

Com utiliza INNER JOIN

Estas en el tema de Com utiliza INNER JOIN en el foro de Mysql en Foros del Web. Como y quando yo utilizao Inner Join y Left join???...
  #1 (permalink)  
Antiguo 23/03/2010, 11:00
 
Fecha de Ingreso: marzo-2009
Ubicación: Santo André - São Paulo - Brasil
Mensajes: 91
Antigüedad: 15 años
Puntos: 1
Com utiliza INNER JOIN

Como y quando yo utilizao Inner Join y Left join???
__________________
Exitem 11 tipos de personas. Las personas que comprendem binario. Y las personas que no comprende.

Tudo en la vida és sencillo o muy sencillo.
  #2 (permalink)  
Antiguo 23/03/2010, 11:54
 
Fecha de Ingreso: agosto-2009
Mensajes: 44
Antigüedad: 14 años, 8 meses
Puntos: 1
Respuesta: Com utiliza INNER JOIN

tbl_01
tbl_02

select * FROM tbl_01 a INNER JOIN tbl_02 b ON a.id = b.id

y listooo
  #3 (permalink)  
Antiguo 23/03/2010, 12:23
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: Com utiliza INNER JOIN

Inner join exige que las coincidencias en ambas tablas se den...
con left join muestra las que coinciden y aquellas que pones a la izquierda de la sentencia acompañadas por un valor null en el campo de la tabla ubicada a la derecha que no encuentra coincidencias.

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #4 (permalink)  
Antiguo 24/03/2010, 06:50
 
Fecha de Ingreso: marzo-2009
Ubicación: Santo André - São Paulo - Brasil
Mensajes: 91
Antigüedad: 15 años
Puntos: 1
Respuesta: Com utiliza INNER JOIN

¿Pero para que sirve y como utilizo?
__________________
Exitem 11 tipos de personas. Las personas que comprendem binario. Y las personas que no comprende.

Tudo en la vida és sencillo o muy sencillo.
  #5 (permalink)  
Antiguo 24/03/2010, 07:26
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: Com utiliza INNER JOIN

flpms

suponiendo quetienes estas tablas

Código MySQL:
Ver original
  1. mysql> select *from factura;
  2. +-------------+
  3. | num_factura |
  4. +-------------+
  5. |         123 |
  6. |         456 |
  7. |         889 |
  8. |         998 |
  9. +-------------+
  10. 4 rows in set (0.00 sec)
  11.  
  12. mysql> select *from pedidos;
  13. +-------------+-------------+
  14. | num_factura | valor_total |
  15. +-------------+-------------+
  16. |         123 |      100000 |
  17. |         123 |        5000 |
  18. |         456 |        1000 |
  19. |         456 |       10000 |
  20. |         889 |        4000 |
  21. +-------------+-------------+
  22. 5 rows in set (0.00 sec)

Fijate que la tabla factura tiene los mismos id de la tabla pedidos a diferencia que también tiene el 998.

Si haces un inner join se muestra unicamente los que coinciden.

Código MySQL:
Ver original
  1. mysql> select f.num_factura,p.valor_total from factura f inner join pedidos p using(num_factura);
  2. +-------------+-------------+
  3. | num_factura | valor_total |
  4. +-------------+-------------+
  5. |         123 |      100000 |
  6. |         123 |        5000 |
  7. |         456 |        1000 |
  8. |         456 |       10000 |
  9. |         889 |        4000 |
  10. +-------------+-------------+
  11. 5 rows in set (0.03 sec)

Pero si se hace un left join, incluirá los que tienen en comun y aquellos que también están en la tabla ubicada a la izquierda (En este caso factura),

Código MySQL:
Ver original
  1. mysql> select f.num_factura,p.valor_total from factura f left join pedidos p using(num_factura);
  2. +-------------+-------------+
  3. | num_factura | valor_total |
  4. +-------------+-------------+
  5. |         123 |      100000 |
  6. |         123 |        5000 |
  7. |         456 |        1000 |
  8. |         456 |       10000 |
  9. |         889 |        4000 |
  10. |         998 |        NULL |
  11. +-------------+-------------+
  12. 6 rows in set (0.00 sec)


se entiende?
__________________
Without data, You are another person with an opinion.
W. Edwads Deming

Etiquetas: join
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:53.