2011-09-30 4 views
5

다른 테이블의 ID를 참조하는 이름, ID 및 외래 키를 포함하여 몇 가지 값으로 테이블을 설정했다고 가정 해 보겠습니다. 이름은 null 일 수 있습니다. 이 테이블에서 모든 레코드를 선택하면 null이 아닌 경우 이름을 가져 오려고합니다. 그렇다면 외래 키에서 참조하는 레코드의 이름을 가져 오려고합니다. 필요한 경우 데이터베이스 구조를 수정할 수 있거나 간단히 쿼리를 변경할 수 있습니다. 내 옵션은 무엇입니까?MySQL - 열이 null 인 경우 다른 테이블에서 값 검색

답변

13

사용 IFNULL 또는 COALESCE :

SELECT T1.ID, IFNULL(T1.name, T2.name) AS name 
FROM firsttable T1 
LEFT JOIN secondtable T2 
ON T1.T2_id = T2.id 
+0

sql에 우리는 winnar있다! 감사! – Fibericon

1

사용 ISNULL

SELECT T1.ID, ISNULL(T1.name, T2.name) AS name 
FROM firsttable T1 
LEFT JOIN secondtable T2 
ON T1.T2_id = T2.id 
관련 문제