개요
이 가이드 에서는 Laravel MongoDB 쿼리에서 결과를 반환하는 방식을 사용자 지정하는 방법을 학습 수 있습니다. where() 메서드에 더 많은 메서드를 연결하여 찾기 작업의 결과를 수정할 수 있습니다.
다음 섹션에서는 where() 메서드의 동작을 수정하는 방법을 보여줍니다.
건너뛰기 및 결과 제한은 메서드를 사용하여 건너뛸
skip()문서 수를 설정하다 하고take()메서드를 사용하여 반환할 총 문서 수를 설정하다 .쿼리 결과 정렬 메서드를 사용하여
orderBy()필드 값에 따라 지정된 순서로 쿼리 결과를 반환합니다.
Laravel 통합의 Eloquent 모델에 대해 학습하려면 데이터 모델링 섹션을 참조하세요.
시작하기 전에
이 가이드의 코드 예제를 실행하려면 빠른 시작 튜토리얼을 완료하세요. 이 튜토리얼에서는 샘플 데이터를 사용하여 MongoDB Atlas 인스턴스를 설정하고 Laravel 웹 애플리케이션에서 다음 파일을 만드는 방법에 대한 지침을 제공합니다.
Movie.php파일에moviescollection의 문서를 나타내는Movie모델이 포함되어 있습니다.MovieController.php파일에 데이터베이스 작업을 실행하는show()함수가 포함되어 있습니다.browse_movies.blade.php파일에는 데이터베이스 작업의 결과를 표시하는 HTML 코드가 포함되어 있습니다.
다음 섹션에서는 Laravel 애플리케이션에서 파일을 편집하여 찾기 작업 코드 예제를 실행하고 예상 출력을 보는 방법을 설명합니다.
결과 건너뛰기 및 제한
이 예제에서는 year 값이 1999 인 문서를 쿼리합니다. 이 작업은 처음 2 일치하는 문서를 건너뛰고 총 3 개의 문서를 출력합니다.
쿼리를 지정하려면 다음 구문을 사용합니다.
$movies = Movie::where('year', 1999) ->skip(2) ->take(3) ->get();
browse_movies 뷰에서 쿼리 결과를 보려면 MovieController.php 파일 에서 show() 함수를 다음 코드와 유사하게 편집합니다.
class MovieController { public function show() { $movies = Movie::where('year', 1999) ->skip(2) ->take(3) ->get(); return view('browse_movies', [ 'movies' => $movies ]); } }
쿼리 결과 정렬
지정된 필드의 값을 기준으로 쿼리 결과의 순서를 지정하려면 where() 메서드를 사용한 다음 orderBy() 메서드를 사용합니다.
결과에 오름차순 또는 내림차순 정렬 방향을 설정할 수 있습니다. 기본적으로 orderBy() 메서드는 제공된 필드 이름에 오름차순 정렬을 설정하지만 "asc" 을 두 번째 매개 변수로 전달하여 오름차순 정렬을 명시적으로 지정할 수 있습니다. 내림차순 정렬을 지정하려면 "desc" 를 두 번째 매개변수로 전달합니다.
문서의 특정 필드에 중복된 값이 포함된 경우 정렬할 필드를 더 지정하여 타이를 처리할 수 있습니다. 이렇게 하면 다른 필드에 고유한 값이 포함된 경우 일관된 결과가 보장됩니다.
이 예제에서는 countries 필드 값에 "Indonesia" 가 포함된 문서를 쿼리하고 먼저 year 필드에서 오름차순 정렬을 수행한 다음 title 필드에서 내림차순 정렬로 결과를 정렬합니다.
쿼리를 지정하려면 다음 구문을 사용합니다.
$movies = Movie::where('countries', 'Indonesia') ->orderBy('year') ->orderBy('title', 'desc') ->get();
browse_movies 뷰에서 쿼리 결과를 보려면 MovieController.php 파일 에서 show() 함수를 다음 코드와 유사하게 편집합니다.
class MovieController { public function show() { $movies = Movie::where('countries', 'Indonesia') ->orderBy('year') ->orderBy('title', 'desc') ->get(); return view('browse_movies', [ 'movies' => $movies ]); } }
추가 정보
Laravel 통합을 사용하여 찾기 작업을 수행하는 방법을 보여주는 실행 가능한 코드 예제를 보려면 다음 사용 예제를 참조하세요.
필터 기준에 따라 데이터를 조회하는 방법을 학습하려면 조회 MongoDB 데이터 가이드를 참조하세요.