> 데이터 베이스 > MySQL 튜토리얼 > 사용자 ID 대신 사용자 이름을 표시하기 위해 서로 다른 열에서 테이블을 두 번 조인하는 방법은 무엇입니까?

사용자 ID 대신 사용자 이름을 표시하기 위해 서로 다른 열에서 테이블을 두 번 조인하는 방법은 무엇입니까?

Linda Hamilton
풀어 주다: 2024-10-24 18:21:02
원래의
469명이 탐색했습니다.

How to Join a Table Twice on Different Columns to Display Usernames Instead of User IDs?

다른 열에서 동일한 테이블을 두 번 조인

질문:

사용자 및 불만 사항 이용자가 불만을 제기하고 해결할 수 있는 테이블을 마련하였습니다. 불만 사항 테이블에는 불만 제기자와 해결자의 user_id가 포함되어 있습니다. 목표는 user_ids 대신 두 당사자의 사용자 이름을 표시하는 쿼리를 작성하는 것입니다.

답변:

사용자 테이블을 서로 다른 열에서 두 번 조인하고 검색하려면 사용자 이름에 대해 다음 쿼리를 사용할 수 있습니다.

SELECT 
     complaint.complaint_text, 
     A.username AS OpenedBy, 
     B.username AS ClosedBy
FROM 
     complaint 
     LEFT JOIN user A ON A.user_id=complaint.opened_by 
     LEFT JOIN user B ON B.user_id=complaint.closed_by
로그인 후 복사

이 쿼리에서:

  • LEFT JOIN 절은 사용자 테이블과 불만 사항 테이블을 두 번 조인하는 데 사용됩니다.
  • 신고인의 사용자 이름을 참조하는 별칭 A가 첫 번째 가입에 사용됩니다.
  • 신고인의 사용자 이름을 참조하는 별칭 B가 두 번째 가입에 사용됩니다.
  • 사용자 테이블 관련 사용자 이름을 검색하여 Open_by 및 Closed_by 열을 기반으로 불만 사항 테이블에 조인됩니다.

위 내용은 사용자 ID 대신 사용자 이름을 표시하기 위해 서로 다른 열에서 테이블을 두 번 조인하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿