>데이터 베이스 >MySQL 튜토리얼 >Laravel Eloquent ORM(벵골어 부품 모델 검색)

Laravel Eloquent ORM(벵골어 부품 모델 검색)

Linda Hamilton
Linda Hamilton원래의
2025-01-08 20:11:45825검색

Laravel Eloquent ORM in Bangla Part-Models Retrieving)

Laravel Eloquent는 데이터베이스와 상호 작용하는 편리하고 읽기 쉬운 방법을 제공하여 데이터베이스 데이터를 쉽게 얻을 수 있도록 해줍니다. 몇 가지 데이터 수집 기술이 아래에 소개되어 있습니다.

1. 모든 기록 가져오기

all() 메소드를 사용하여 테이블의 모든 레코드를 가져옵니다.

<code class="language-php">use App\Models\Post;

$posts = Post::all();</code>

이렇게 하면 컬렉션이 반환됩니다. foreach 루프나 기타 수집 방법을 사용하여 데이터에 액세스할 수 있습니다.

<code class="language-php">foreach ($posts as $post) {
    echo $post->title;
}</code>

2. 싱글 레코드 받기

1. find() 방법: 기본 키를 기반으로 단일 레코드를 가져옵니다.

<code class="language-php">$post = Post::find(1);

if ($post) {
    echo $post->title;
}</code>

2. findOrFail() 방법: 기본 키를 기반으로 단일 레코드를 가져옵니다. 레코드가 존재하지 않으면 404 예외가 발생합니다.

<code class="language-php">$post = Post::findOrFail(1);</code>

3. first() 방법: 조건에 맞는 첫 번째 레코드를 가져옵니다.

<code class="language-php">$post = Post::where('status', 'published')->first();</code>

4. firstOrFail() 방법: 조건을 충족하는 첫 번째 레코드를 가져옵니다. 레코드가 존재하지 않으면 404 예외가 발생합니다.

<code class="language-php">$post = Post::where('status', 'published')->firstOrFail();</code>

3. 쿼리 조건을 사용하여 레코드 필터링

where 및 기타 조건문을 사용하여 데이터를 필터링합니다.

1. where 방법:

<code class="language-php">$posts = Post::where('status', 'published')->get();</code>

2. 다중 조건:

<code class="language-php">$posts = Post::where('status', 'published')
             ->where('user_id', 1)
             ->get();</code>

3. orWhere 방법:

<code class="language-php">$posts = Post::where('status', 'published')
             ->orWhere('status', 'draft')
             ->get();</code>

4. 특정 필드 선택

Eloquent는 기본적으로 모든 필드를 가져옵니다. 특정 필드를 선택하려면 select() 메서드를 사용하세요.

<code class="language-php">$posts = Post::select('title', 'content')->get();</code>

5. 페이지 매김

paginate() 메소드를 사용하여 페이지의 데이터를 가져옵니다.

<code class="language-php">$posts = Post::paginate(10);</code>

블레이드 템플릿에 페이지 매김 링크 표시:

<code class="language-blade">{{ $posts->links() }}</code>

6. 데이터 청킹

대량의 데이터를 처리할 때 메모리 사용량을 효과적으로 줄일 수 있습니다.

<code class="language-php">Post::chunk(100, function ($posts) {
    foreach ($posts as $post) {
        echo $post->title;
    }
});</code>

7. 결과 정렬(Ordering)

지정된 순서로 정렬하려면 orderBy() 메소드를 사용하세요.

<code class="language-php">$posts = Post::orderBy('created_at', 'desc')->get();</code>

8. 한계 및 오프셋

가져오는 레코드 수를 제한하려면 take() 또는 limit()skip() 메소드를 사용하세요.

<code class="language-php">$posts = Post::take(5)->get(); // 获取前 5 条记录
$posts = Post::skip(10)->take(5)->get(); // 跳过前 10 条,获取接下来的 5 条</code>

9. 집계 함수(Aggregate)

1. 개수:

<code class="language-php">$count = Post::count();</code>

2. 최대값:

<code class="language-php">$maxViews = Post::max('views');</code>

3. 최소값:

<code class="language-php">$minViews = Post::min('views');</code>

4. 평균:

<code class="language-php">$avgViews = Post::avg('views');</code>

5. 합계:

<code class="language-php">$totalViews = Post::sum('views');</code>

10. 맞춤형 관계 검색

Eloquent는 관계를 통해 다른 모델로부터 데이터를 얻는 것을 지원합니다.

1. 바로 로딩:

<code class="language-php">$posts = Post::with('comments')->get();</code>

2. 관계 지정:

<code class="language-php">$posts = Post::with(['comments', 'user'])->get();</code>

11. 원시 쿼리

Laravel의 DB 파사드를 사용하여 사용자 정의 SQL 쿼리를 실행하세요.

<code class="language-php">use App\Models\Post;

$posts = Post::all();</code>

이러한 방법은 다양한 데이터베이스 운영 요구 사항을 충족하는 유연한 데이터 수집 방법을 제공합니다. 실제 상황에 따라 적절한 방법을 선택하십시오.

위 내용은 Laravel Eloquent ORM(벵골어 부품 모델 검색)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.