쉼표로 구분된 값으로 두 테이블 결합
문제:
테이블이 두 개 있습니다. : 메모 및 위치. Notes 테이블에는 쉼표로 구분된 부서 ID를 저장하는 'forDepts'라는 열이 포함되어 있습니다. 이러한 테이블을 조인하고 'forDepts' 값을 Positions 테이블의 해당 부서 이름과 연결해야 합니다.
원하는 출력:
nid | DepartmentName |
---|---|
1 | Executive, Corp Admin, Art |
2 | Art, Marketing |
해결책:
데이터베이스 구조는 수정할 수 없으므로 다음 SQL을 사용합니다. 원하는 출력을 얻기 위한 쿼리:
SELECT a.nid, GROUP_CONCAT(b.name ORDER BY b.id) DepartmentName FROM Notes a INNER JOIN Positions b ON FIND_IN_SET(b.id, a.forDepts) > 0 GROUP BY a.nid
설명:
이 쿼리를 실행하면 원하는 출력을 얻을 수 있습니다. 여기서 Notes 테이블의 'forDepts' 열 값은 Notes 테이블의 쉼표로 구분된 해당 부서 이름으로 대체됩니다. 포지션 테이블. 이렇게 하면 제공된 PHP 코드를 사용하여 데이터를 Excel 파일로 쉽게 내보낼 수 있습니다.
위 내용은 SQL에서 쉼표로 구분된 값으로 테이블을 조인하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!