Comment aliaser des tables dans les requêtes Laravel Eloquent et Query Builder ?

DDD
Libérer: 2024-10-20 09:47:02
original
158 Les gens l'ont consulté

How to Alias Tables in Laravel Eloquent and Query Builder Queries?

Aliasing de table dans les requêtes éloquentes et le générateur de requêtes Laravel

De nombreux développeurs utilisant le générateur de requêtes de Laravel ou l'API Fluent rencontrent souvent le besoin d'aliaser des tables pour rendre les requêtes plus lisibles et gérables . Cet article montrera comment créer des alias de tables dans les requêtes Laravel Eloquent et le générateur de requêtes.

Considérez le scénario suivant :

<code class="php">$users = DB::table('really_long_table_name')
           ->select('really_long_table_name.id')
           ->get();</code>
Copier après la connexion

En SQL, nous pouvons utiliser des alias de table pour simplifier la requête :

<code class="sql">really_long_table_name AS short_name</code>
Copier après la connexion

Laravel prend en charge les alias de table utilisant le mot-clé AS. Pour alias une table dans Laravel Query Builder, ajoutez simplement l'alias après le nom de la table comme ceci :

<code class="php">$users = DB::table('really_long_table_name AS t')
           ->select('t.id')
           ->get();</code>
Copier après la connexion

Ici, la table Real_long_table_name a été alias comme t. Vous pouvez utiliser cet alias tout au long de la requête, y compris dans les clauses select,where et autres.

Pour démontrer l'utilisation, effectuons une requête à l'aide de Tinker :

<code class="bash">Schema::create('really_long_table_name', function($table) {$table->increments('id');});
DB::table('really_long_table_name')->insert(['id' => null]);

DB::table('really_long_table_name AS t')->select('t.id AS uid')->get();</code>
Copier après la connexion

Cela renverra un objet avec l'uid de colonne alias, comme indiqué ci-dessous :

<code class="php">array(
  0 => object(stdClass)(
    'uid' => '1'
  )
)</code>
Copier après la connexion

En comprenant cette technique, vous pouvez efficacement aliaser les tables dans les requêtes Laravel Eloquent et Query Builder, rendant votre code plus lisible et gérable, en particulier lorsque vous travaillez avec requêtes complexes.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!