Laravel Inner Join, Left Join ejemplos

Laravel Inner Join, Left Join ejemplos

Laravel Inner Join. Si desean unir varias tablas y obtener resultados en conjunto indudablemente se debe de usar IINER JOIN en las consultas SQL.

Laravel Inner Join

Vamos a simular que en nuestro escenario tenemos el modelo de la tabla users llamado User y la tabla categorías, a través del encadenamiento de métodos podemos hacer lo siguiente valiendonos de select() y de join() ambos métodos en Eloquent

💣 Descarga sistemas PHP y Laravel COMPLETOS GRATIS
Recursos premium listos para usar en proyectos reales 💻
👥 +1000 desarrolladores · 🔥 Publicaciones diarias
🔥 Unirme al canal GRATIS ahora 👥 Grupo de Facebook
⏳ Enlaces disponibles por tiempo limitado
💻 Sistemas completos 🔌 Plugins PRO ⚡ Scripts listos 🔥 Recursos exclusivos

En la construcción de la consulta, a la variable $data la igualamos a la clase del Modelo User y este a su vez accede al método estático select()

$data = User::select('users.nameUser', 'categories.nameCategory')
->join('categories', 'users.idUser', '=', 'categories.user_id')
->get();

return $data;

LEFT JOIN EN LARAVEL

A continuación, mostraremos un ejemplo para usar la clausulas LEFT JOIN

$data = User::select('users.nameUser', 'categories.nameCategory')
->leftjoin('categories', 'users.idUser', '=', 'categories.user_id')
->get();

return $data;

Inner Join Query Builder

Supongamos que tiene dos tablas: usuarios y pedidos. Quiere obtener una lista de usuarios que han realizado pedidos. Puede utilizar una unión interna para ello. A continuación, le indicamos cómo hacerlo

$leagues = DB::table('leagues')
->select('league_name')
->join('countries', 'countries.country_id', '=', 'leagues.country_id')
->where('countries.country_name', $country)
->get();

INNER JOIN ELOQUENT

Si estás usando Eloquent y tienes el modelo «Liga», también puedes usar join en el modelo:

$leagues = League::select('league_name')
->join('countries', 'countries.country_id', '=', 'leagues.country_id')
->where('countries.country_name', $country)
->get();

En resumen

La variable $leagues se tiene qe pasar por un ciclo ya sea FOREACH() o FORELSE() de Laravel para obtener los resultados de la unión de las 2 tablas

Si por algún motivo se desea unir mas tablas solo se tendría que agregar un ->join a la sentencia.

¿De cuánta utilidad te ha parecido este contenido?

¡Haz clic en una estrella para puntuarlo!

Promedio de puntuación 0 / 5. Recuento de votos: 0

Hasta ahora, ¡no hay votos!. Sé el primero en puntuar este contenido.