Laravel Eloquent およびクエリビルダークエリでテーブルにエイリアスを付ける方法は?

DDD
リリース: 2024-10-20 09:47:02
オリジナル
248 人が閲覧しました

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

Laravel Eloquent クエリおよびクエリ ビルダーでのテーブルのエイリアス

Laravel のクエリ ビルダーまたは Fluent API を使用する多くの開発者は、クエリを読みやすく管理しやすくするためにテーブルのエイリアスを作成する必要性によく遭遇します。 。この記事では、Laravel Eloquent クエリとクエリ ビルダーでテーブルにエイリアスを付ける方法を説明します。

次のシナリオを考えてみましょう:

<code class="php">$users = DB::table('really_long_table_name')
           ->select('really_long_table_name.id')
           ->get();</code>
ログイン後にコピー

SQL では、テーブル エイリアスを使用してクエリを簡素化できます。

<code class="sql">really_long_table_name AS short_name</code>
ログイン後にコピー

Laravel は AS キーワードを使用したテーブルエイリアスをサポートしています。 Laravel Query Builder でテーブルにエイリアスを付けるには、次のようにテーブル名の後にエイリアスを追加します。

<code class="php">$users = DB::table('really_long_table_name AS t')
           ->select('t.id')
           ->get();</code>
ログイン後にコピー

ここでは、テーブル really_long_table_name に t というエイリアスが付けられています。このエイリアスは、select、where、その他の句を含め、クエリ全体で使用できます。

使用法を示すために、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>
ログイン後にコピー

これは、以下に示すように、エイリアスされた列 uid を持つオブジェクトを作成します。

<code class="php">array(
  0 => object(stdClass)(
    'uid' => '1'
  )
)</code>
ログイン後にコピー

この手法を理解することで、Laravel Eloquent クエリとクエリ ビルダーでテーブルに効果的にエイリアスを付けることができ、コードをより読みやすく、管理しやすくなります。複雑なクエリ。

以上がLaravel Eloquent およびクエリビルダークエリでテーブルにエイリアスを付ける方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート