-
Query Builder limit 및 offset 메소드백엔드/laravel 2024. 1. 15. 17:39
1. limit 메소드:
이 메소드는 쿼리에서 반환되는 레코드 수를 제한하는 데 사용됩니다.
하나의 매개변수를 받으며, 반환할 최대 레코드 수를 나타냅니다.
$results = DB::table('posts')->limit(10)->get();위의 코드에서는 'posts' 테이블에서 첫 10개의 레코드만을 가져오고 있습니다.
2. offset 메소드:
이 메소드는 쿼리의 시작 부분에서 지정된 수의 레코드를 건너뛰는 데 사용됩니다.
하나의 매개변수를 받으며, 건너뛸 레코드 수를 나타냅니다.
$results = DB::table('posts')->offset(10)->limit(10)->get();위의 코드에서는 'posts' 테이블에서 첫 10개의 레코드를 건너뛰고 다음 10개의 레코드를 가져오고 있습니다.
이러한 메소드들은 데이터를 작은 청크 단위로 검색함으로써 애플리케이션의 성능을 향상시킬 수 있습니다. 또한 메모리 사용량을 줄이고 대규모 데이터셋을 관리하기 용이하게 만듭니다.
그러나 이러한 메소드들은 대량의 데이터셋에서 사용할 때 효율적이지 않을 수 있습니다. 이는 데이터베이스가 쿼리에 일치하는 모든 레코드를 검색하고 지정된 기준을 충족하지 않는 레코드를 폐기해야 하기 때문입니다. 결과적으로 애플리케이션의 성능이 저하되고 메모리 사용량이 증가할 수 있습니다.
이러한 메소드들은 특히 offset 및 limit 값이 레코드의 중간에 추가되거나 제거되는 경우에 일관성이 없을 수 있습니다. 이를 해결하기 위해서는 올바른 레코드를 반환하도록 offset 및 limit 값을 조절해야 합니다.
'백엔드 > laravel' 카테고리의 다른 글
Query Builder reorder 메서드 (0) 2024.01.15 Query Builder when 메소드 (0) 2024.01.15 Query Builder 풀 텍스트 인덱스 (0) 2024.01.15 Query Builder orderBy, latest, 그리고 oldest 메소드 (0) 2024.01.15 Query Builder 직접 쿼리를 작성 (0) 2024.01.15