lunes, 21 de agosto de 2023

Joins en Sql

Inner join 

select ordenes.id_orden, clientes.nombre

from ordenes inner join clientes on ordenes.idcliente = clientes.idcliente;

Left Join

select clientes.nombre, clientes.apellido, ordenes.id_orden
from clientes
left join ordenes on clientes.idcliente = ordenes.idcliente
order by id_orden

ó

select cli.nombre, cli.apellido, ord.id_orden
from clientes cli
left join ordenes ord on cli.idcliente = ord.idcliente
order by ord.id_orden

Right Join

select ord.id_orden,cli.nombre,cli.apellido
from clientes cli
right join ordenes ord on ord.idcliente = cli.idcliente
order by ord.id_orden

Full Join

select ord.id_orden,cli.nombre,cli.apellido
from ordenes ord
full join clientes cli on ord.idcliente = cli.idcliente
order by ord.id_orden

Union (mismo # columnas y  tipo datos similares, no es un join)

  select contacto, ciudad, pais from clientes
  union
  select contacto, ciudad, pais from suplidores


  select contacto, ciudad, pais from clientes
  union all
  select contacto, ciudad, pais from suplidores

select 'Cliente' as Tipo,contacto, ciudad, pais from clientes
  union 
  select 'Suplidor' as Tipo,contacto, ciudad, pais from suplidores


No hay comentarios:

Publicar un comentario

Blogs Colombia