Laravel Eloquent를 사용하여 여러 WHERE 절이 포함된 쿼리 작성
다음 시나리오를 고려해보세요. Laravel의 Eloquent 쿼리 빌더를 활용하고 있으며 다음을 생성해야 합니다. 다양한 조건을 대상으로 하는 여러 WHERE 절이 있는 쿼리입니다. 여러 개의 where 메서드 호출을 사용하여 그렇게 하는 것이 가능하지만 이 접근 방식은 반복적이고 다루기 어려울 수 있습니다.
이 문제를 해결하기 위해 Laravel은 이러한 쿼리를 보다 우아하게 구성할 수 있는 몇 가지 대체 옵션을 제공합니다.
Laravel 5.3부터 조건 배열을 사용하여 다음을 지정할 수 있습니다. where 메소드에 전달된 배열의 여러 조건:
$query->where([ ['column_1', '=', 'value_1'], ['column_2', '<>', 'value_2'], // ... ]);
where에서 배열 사용
Laravel 5.3 이전에는 배열을 사용하여 조건을 지정할 수도 있었습니다. 위치:
$matchThese = ['field' => 'value', 'another_field' => 'another_value', ...]; $results = User::where($matchThese)->get();
사용 orWhere
또는 orWhere를 사용하여 조건을 그룹화할 수 있습니다.
$results = User::where($matchThese) ->orWhere($orThose) ->get();
결과 SQL 쿼리
orWhere 메소드를 사용하면 다음과 유사한 쿼리:
SELECT * FROM users WHERE (field = value AND another_field = another_value AND ...) OR (yet_another_field = yet_another_value AND ...)
이러한 기술을 사용하면 보다 간결하고 유지 관리가 쉬운 방식으로 여러 WHERE 절이 포함된 쿼리를 작성할 수 있습니다.
위 내용은 여러 WHERE 절을 사용하여 Laravel Eloquent 쿼리를 효율적으로 구축하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!