Laravel은 오늘날 가장 인기 있는 PHP 프레임워크 중 하나이며 쿼리 구문은 우아하고 간단하며 사용하기 쉽습니다. 이 기사에서는 Laravel의 쿼리 구문을 자세히 살펴보고 몇 가지 일반적인 쿼리 방법을 소개하며 복잡한 쿼리를 수행하는 방법을 설명합니다.
Laravel 쿼리의 기본 구문
Laravel에서 쿼리 문은 Eloquent ORM을 사용하여 작성됩니다. ORM은 객체 관계형 매핑(Object Relational Mapping)으로, 이를 통해 데이터베이스를 객체 지향 방식으로 운영할 수 있어 데이터베이스와의 상호 작용 프로세스가 크게 단순화됩니다.
다음은 Laravel 쿼리 구문을 사용한 예입니다.
//단일 사용자 가져오기
$user = User::find(1);
//사용자 목록 가져오기
$users = User::all( );
//조건부 필터링, 지정된 조건에서 사용자 목록 가져오기
$users = User::where('age', '>', 18)->get();
//데이터 업데이트
$user-> ;name = 'new name';
$user->save();
//Delete data
$user->delete();
위와 같이 Laravel 쿼리 구문을 사용하면 기본적인 CURD 작업을 쉽게 구현할 수 있습니다. 아래에서는 일반적으로 사용되는 몇 가지 쿼리 방법을 소개합니다.
일반적으로 사용되는 쿼리 방법
$users = User::where('age', '>', 18)->where('gender', 'male')->get();
where() method 연산자를 지정하는 세 번째 매개변수를 받을 수도 있습니다. 예:
$users = User::where('age', '>=', 18)->get();
$users = User::orderBy('age')->get();
기본적으로 orderBy() 메서드는 오름차순으로 정렬됩니다. 내림차순으로 정렬하려면 DESC 매개변수를 전달할 수 있습니다:
$users = User::orderBy('age', 'desc')->get();
또한 orderBy() 메소드는 여러 정렬 조건을 지정하기 위한 여러 매개변수를 받을 수 있습니다:
$users = User::orderBy('age', 'desc')->orderBy('name')->get();
$users = User::select('name', 'email')->get();
또한 *를 사용하여 모든 열을 쿼리할 수도 있습니다.
$users = User::select (' *')->get();
$users = User::take(10)->get();
페이징을 구현하기 위해 Skip() 메서드를 사용할 수도 있습니다:
$users = 사용자: :skip(10)->take(10)->get();
$users = User::whereIn('age', [16, 17, 18])->get();
$users = User::whereNull('email')->get();
$users = User::groupBy('gender')->having('age', '>' , 20 )->get();
복잡한 쿼리
위에서는 Laravel 쿼리 구문의 몇 가지 기본 사용법을 소개합니다. 그러나 실제 개발에서는 일반적으로 쿼리해야 하는 데이터가 매우 복잡할 수 있으며 이를 달성하려면 더 많은 쿼리 방법을 사용해야 합니다. Laravel에서는 쿼리 빌더를 사용하여 보다 복잡한 쿼리 문을 작성할 수 있습니다.
예를 들어 누적 소비량이 500위안을 초과하는 사용자를 쿼리하려면 다음과 같이 작성할 수 있습니다.
$users = DB::table('users')
->join('orders', 'users.id', '=', 'orders.user_id') ->select('users.id', 'users.name', 'users.email', DB::raw('SUM(orders.total) as total')) ->groupBy('users.id') ->having('total', '>', 500) ->get();
위 코드에서는 Join( ) 메소드를 사용하여 사용자 테이블과 주문 테이블을 연결하고, groupBy() 메소드를 사용하여 사용자를 그룹화하고, have() 메소드를 사용하여 누적 소비량이 500위안을 초과하는 사용자를 필터링합니다.
Summary
Laravel에서는 Eloquent ORM을 사용하여 기본 CURD 작업을 쉽게 구현할 수 있습니다. 동시에 쿼리 빌더를 사용하면 더 복잡한 쿼리를 구현할 수 있습니다. 이 글이 Laravel의 쿼리 구문을 이해하는 데 도움이 되기를 바랍니다.
위 내용은 laravel 쿼리 구문의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!