>백엔드 개발 >PHP 튜토리얼 >신용 기록 검색을 위한 교리에서 왼쪽 조인을 구현하는 방법은 무엇입니까?

신용 기록 검색을 위한 교리에서 왼쪽 조인을 구현하는 방법은 무엇입니까?

DDD
DDD원래의
2024-10-29 21:52:02975검색

How to Implement Left Joins in Doctrine for Credit History Retrieval?

Doctrine에서 Left Join을 수행하는 방법

getHistory() 함수에서 사용자의 신용 기록을 검색하려고 합니다. . 그러나 조인 절의 초기 구문에서 오류가 발생했습니다.

Doctrine에서 왼쪽 조인을 수행하려면 다음 구문을 사용할 수 있습니다.

<code class="php">$qb
    ->select('a', 'u')
    ->from('Credit\Entity\UserCreditHistory', 'a')
    ->leftJoin('a.user', 'u')
    ->where('u = :user')
    ->setParameter('user', $users)
    ->orderBy('a.created_at', 'DESC');</code>

여기서 a는 별칭을 나타냅니다. UserCreditHistory 엔터티의 경우 u는 조인된 User 엔터티의 별칭을 나타냅니다. leftJoin() 메서드를 사용하면 UserCreditHistory 테이블에서 일치하지 않는 User 테이블의 행을 포함하도록 지정하게 됩니다.

또는 둘 사이에 연관성이 없는 경우 엔터티에는 다음 구문을 사용할 수 있습니다.

<code class="php">$qb
    ->select('a', 'u')
    ->from('Credit\Entity\UserCreditHistory', 'a')
    ->leftJoin(
        'User\Entity\User',
        'u',
        \Doctrine\ORM\Query\Expr\Join::WITH,
        'a.user = u.id'
    )
    ->where('u = :user')
    ->setParameter('user', $users)
    ->orderBy('a.created_at', 'DESC');
````
</code>

위 내용은 신용 기록 검색을 위한 교리에서 왼쪽 조인을 구현하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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