Laravel のクエリ ビルダーでは、テーブル エイリアスの名前を変更するとコードの可読性が向上し、入力の労力が軽減されるシナリオに遭遇することがあります。 「really_long_table_name」のような長い名前のテーブルがあるとします。
テーブルにエイリアスを付けるための SQL 構文は次のとおりです。
<code class="sql">really_long_table_name AS short_name</code>
Laravel のクエリ ビルダーで同じことを実現するには、次の手順に従います。 :
クエリ ビルダーで AS を使用する
<code class="php">$users = DB::table('really_long_table_name AS t') ->select('t.id AS uid') ->get();</code>
Eloquent で AS を使用する
<code class="php">$users = App\User::from('really_long_table_name AS t') ->select('t.id AS uid') ->get();</code>
例使用法
Tinker を使用して機能をデモしてみましょう。
$ php artisan tinker [1] > Schema::create('really_long_table_name', function($table) {$table->increments('id');}); // NULL [2] > DB::table('really_long_table_name')->insert(['id' => null]); // true [3] > DB::table('really_long_table_name AS t')->select('t.id AS uid')->get(); // array( // 0 => object(stdClass)( // 'uid' => '1' // ) // )
テーブルと列に別名を付けることで、クエリを簡素化し、読みやすく簡潔にすることができます。
以上がLaravel Eloquent と Query Builder でテーブルにエイリアスを付ける方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。