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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿