GORM의 다중 테이블 조인
GORM의 테이블 조인을 사용하면 여러 테이블에서 관련 데이터를 동시에 검색할 수 있습니다. 세 개의 테이블을 포함하는 조인 쿼리를 수행하는 방법은 다음과 같습니다.
테이블 구조
다음 테이블 구조를 고려하세요.
예제 쿼리
부서 ID가 직원의학과 ID와 일치하는 세 테이블의 모든 열을 검색한다고 가정합니다. 해당 직원의 ID가 EmployeeContact의 Employee_id와 일치합니다:
SQL 쿼리:
<code class="sql">SELECT * FROM department d, employee e, employeeContact ec WHERE d.id = e.department_id and e.id = ec.employee_id;</code>
GORM 동등
<code class="go">import ( "gorm.io/gorm" ) func MultipleJoinExample(db *gorm.DB) error { type Result struct { DepartmentID uint EmployeeID uint EmployeeName string EmployeeContactNo string } var results []Result if err := db.Table("employee").Select("department.id, employee.department_id, employeeContact.employee_id, employee.emp_name, employeeContact.emp_contact_no"). Joins("JOIN department on department.id = employee.department_id"). Joins("JOIN employeeContact on employeeContact.id = employee.id"). Find(&results).Error; err != nil { return err } return nil }</code>
In 이 예:
위 내용은 GORM을 사용하여 여러 테이블 조인을 수행하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!